<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[189202] trunk</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/189202">189202</a></dd>
<dt>Author</dt> <dd>cdumez@apple.com</dd>
<dt>Date</dt> <dd>2015-08-31 19:25:00 -0700 (Mon, 31 Aug 2015)</dd>
</dl>

<h3>Log Message</h3>
<pre>Range API is throwing wrong exception type
https://bugs.webkit.org/show_bug.cgi?id=148648

Reviewed by Ryosuke Niwa.

Source/WebCore:

The RangeException type does not exist in the latest DOM specification.
Instead, the Range API is throwing regular DOMExceptions [1]:
https://dom.spec.whatwg.org/#range

The error codes also differ. RangeException.INVALID_NODE_TYPE_ERR (2)
is replaced with DOMException.INVALID_NODE_TYPE_ERR (24).
RangeException.BAD_BOUNDARYPOINTS_ERR (1) is replaced by
DOMException.INVALID_STATE_ERR (11), as per:
https://dom.spec.whatwg.org/#dom-range-surroundcontents (step 1).

This patch aligns WebKit's behavior with the specification and with
other browsers (tested Firefox and Chrome).

[1] https://heycam.github.io/webidl/#dfn-DOMException

No new tests, covered by existing tests (rebaselined):
http/tests/w3c/dom/ranges/Range-comparePoint.html
http/tests/w3c/dom/ranges/Range-isPointInRange.html
http/tests/w3c/dom/ranges/Range-selectNode.html
http/tests/w3c/dom/ranges/Range-set.html
http/tests/w3c/dom/ranges/Range-surroundContents.html

* CMakeLists.txt:
* DerivedSources.cpp:
* DerivedSources.make:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSExceptionBase.cpp:
(WebCore::toExceptionBase): Deleted.
* dom/DOMAllInOne.cpp:
* dom/DOMExceptions.in:
* dom/Range.cpp:
(WebCore::Range::insertNode):
(WebCore::Range::checkNodeWOffset):
(WebCore::Range::checkNodeBA):
(WebCore::Range::selectNode):
(WebCore::Range::selectNodeContents):
(WebCore::Range::surroundContents):
* dom/RangeException.cpp: Removed.
* dom/RangeException.h: Removed.
* dom/RangeException.idl: Removed.

Source/WebKit/win:

* Interfaces/DOMWindow.idl:
Drop outdated comment.

LayoutTests:

Update / rebaseline tests. A lot of w3c tests progressed after this
change. However, some of our pre-existing layout tests were relying
on RangeException.

* fast/dom/DOMException/RangeException-expected.txt: Removed.
* fast/dom/DOMException/RangeException.html: Removed.
* fast/dom/DOMException/resources/RangeException.js: Removed.
* fast/dom/Range/range-compareNode.html:
* fast/dom/Range/range-exceptions-expected.txt:
* fast/dom/Range/range-intersectsNode-expected.txt:
* fast/dom/Range/script-tests/range-exceptions.js:
* fast/dom/Window/get-set-properties-expected.txt:
* fast/dom/Window/get-set-properties.html:
* fast/dom/Window/resources/window-properties.js:
* http/tests/w3c/dom/ranges/Range-comparePoint-expected.txt:
* http/tests/w3c/dom/ranges/Range-isPointInRange-expected.txt:
* http/tests/w3c/dom/ranges/Range-selectNode-expected.txt:
* http/tests/w3c/dom/ranges/Range-set-expected.txt:
* http/tests/w3c/dom/ranges/Range-surroundContents-expected.txt:
* platform/mac/fast/dom/Window/window-lookup-precedence-expected.txt:</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsChangeLog">trunk/LayoutTests/ChangeLog</a></li>
<li><a href="#trunkLayoutTestsfastdomRangerangecompareNodehtml">trunk/LayoutTests/fast/dom/Range/range-compareNode.html</a></li>
<li><a href="#trunkLayoutTestsfastdomRangerangeexceptionsexpectedtxt">trunk/LayoutTests/fast/dom/Range/range-exceptions-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastdomRangerangeintersectsNodeexpectedtxt">trunk/LayoutTests/fast/dom/Range/range-intersectsNode-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastdomRangescripttestsrangeexceptionsjs">trunk/LayoutTests/fast/dom/Range/script-tests/range-exceptions.js</a></li>
<li><a href="#trunkLayoutTestsfastdomWindowgetsetpropertiesexpectedtxt">trunk/LayoutTests/fast/dom/Window/get-set-properties-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastdomWindowgetsetpropertieshtml">trunk/LayoutTests/fast/dom/Window/get-set-properties.html</a></li>
<li><a href="#trunkLayoutTestsfastdomWindowresourceswindowpropertiesjs">trunk/LayoutTests/fast/dom/Window/resources/window-properties.js</a></li>
<li><a href="#trunkLayoutTestshttptestssecuritycrossframeaccessgetOwnPropertyDescriptorexpectedtxt">trunk/LayoutTests/http/tests/security/cross-frame-access-getOwnPropertyDescriptor-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestssecuritycrossframeaccessgetOwnPropertyDescriptorhtml">trunk/LayoutTests/http/tests/security/cross-frame-access-getOwnPropertyDescriptor.html</a></li>
<li><a href="#trunkLayoutTestshttptestssecuritycrossframeaccessputexpectedtxt">trunk/LayoutTests/http/tests/security/cross-frame-access-put-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestssecuritycrossframeaccessputhtml">trunk/LayoutTests/http/tests/security/cross-frame-access-put.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cdomhistoricalexpectedtxt">trunk/LayoutTests/http/tests/w3c/dom/historical-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cdomrangesRangecomparePointexpectedtxt">trunk/LayoutTests/http/tests/w3c/dom/ranges/Range-comparePoint-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cdomrangesRangeisPointInRangeexpectedtxt">trunk/LayoutTests/http/tests/w3c/dom/ranges/Range-isPointInRange-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cdomrangesRangeselectNodeexpectedtxt">trunk/LayoutTests/http/tests/w3c/dom/ranges/Range-selectNode-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cdomrangesRangesetexpectedtxt">trunk/LayoutTests/http/tests/w3c/dom/ranges/Range-set-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cdomrangesRangesurroundContentsexpectedtxt">trunk/LayoutTests/http/tests/w3c/dom/ranges/Range-surroundContents-expected.txt</a></li>
<li><a href="#trunkLayoutTestsplatformefljsdomglobalconstructorsattributesexpectedtxt">trunk/LayoutTests/platform/efl/js/dom/global-constructors-attributes-expected.txt</a></li>
<li><a href="#trunkLayoutTestsplatformgtkjsdomglobalconstructorsattributesexpectedtxt">trunk/LayoutTests/platform/gtk/js/dom/global-constructors-attributes-expected.txt</a></li>
<li><a href="#trunkLayoutTestsplatformmacfastdomWindowwindowlookupprecedenceexpectedtxt">trunk/LayoutTests/platform/mac/fast/dom/Window/window-lookup-precedence-expected.txt</a></li>
<li><a href="#trunkLayoutTestsplatformmacjsdomglobalconstructorsattributesexpectedtxt">trunk/LayoutTests/platform/mac/js/dom/global-constructors-attributes-expected.txt</a></li>
<li><a href="#trunkLayoutTestsplatformmacmavericksjsdomglobalconstructorsattributesexpectedtxt">trunk/LayoutTests/platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt</a></li>
<li><a href="#trunkLayoutTestsplatformmacyosemitejsdomglobalconstructorsattributesexpectedtxt">trunk/LayoutTests/platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt</a></li>
<li><a href="#trunkLayoutTestsplatformwinjsdomglobalconstructorsattributesexpectedtxt">trunk/LayoutTests/platform/win/js/dom/global-constructors-attributes-expected.txt</a></li>
<li><a href="#trunkSourceWebCoreCMakeListstxt">trunk/Source/WebCore/CMakeLists.txt</a></li>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCoreDerivedSourcescpp">trunk/Source/WebCore/DerivedSources.cpp</a></li>
<li><a href="#trunkSourceWebCoreDerivedSourcesmake">trunk/Source/WebCore/DerivedSources.make</a></li>
<li><a href="#trunkSourceWebCoreWebCorevcxprojWebCorevcxproj">trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj</a></li>
<li><a href="#trunkSourceWebCoreWebCorevcxprojWebCorevcxprojfilters">trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters</a></li>
<li><a href="#trunkSourceWebCoreWebCorexcodeprojprojectpbxproj">trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj</a></li>
<li><a href="#trunkSourceWebCorebindingsjsJSExceptionBasecpp">trunk/Source/WebCore/bindings/js/JSExceptionBase.cpp</a></li>
<li><a href="#trunkSourceWebCoredomDOMAllInOnecpp">trunk/Source/WebCore/dom/DOMAllInOne.cpp</a></li>
<li><a href="#trunkSourceWebCoredomDOMExceptionsin">trunk/Source/WebCore/dom/DOMExceptions.in</a></li>
<li><a href="#trunkSourceWebCoredomRangecpp">trunk/Source/WebCore/dom/Range.cpp</a></li>
<li><a href="#trunkSourceWebKitwinChangeLog">trunk/Source/WebKit/win/ChangeLog</a></li>
<li><a href="#trunkSourceWebKitwinInterfacesDOMWindowidl">trunk/Source/WebKit/win/Interfaces/DOMWindow.idl</a></li>
</ul>

<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsfastdomDOMExceptionRangeExceptionexpectedtxt">trunk/LayoutTests/fast/dom/DOMException/RangeException-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastdomDOMExceptionRangeExceptionhtml">trunk/LayoutTests/fast/dom/DOMException/RangeException.html</a></li>
<li><a href="#trunkLayoutTestsfastdomDOMExceptionresourcesRangeExceptionjs">trunk/LayoutTests/fast/dom/DOMException/resources/RangeException.js</a></li>
<li><a href="#trunkSourceWebCoredomRangeExceptioncpp">trunk/Source/WebCore/dom/RangeException.cpp</a></li>
<li><a href="#trunkSourceWebCoredomRangeExceptionh">trunk/Source/WebCore/dom/RangeException.h</a></li>
<li><a href="#trunkSourceWebCoredomRangeExceptionidl">trunk/Source/WebCore/dom/RangeException.idl</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkLayoutTestsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/ChangeLog (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/ChangeLog        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/ChangeLog        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -1,3 +1,31 @@
</span><ins>+2015-08-31  Chris Dumez  &lt;cdumez@apple.com&gt;
+
+        Range API is throwing wrong exception type
+        https://bugs.webkit.org/show_bug.cgi?id=148648
+
+        Reviewed by Ryosuke Niwa.
+
+        Update / rebaseline tests. A lot of w3c tests progressed after this
+        change. However, some of our pre-existing layout tests were relying
+        on RangeException.
+
+        * fast/dom/DOMException/RangeException-expected.txt: Removed.
+        * fast/dom/DOMException/RangeException.html: Removed.
+        * fast/dom/DOMException/resources/RangeException.js: Removed.
+        * fast/dom/Range/range-compareNode.html:
+        * fast/dom/Range/range-exceptions-expected.txt:
+        * fast/dom/Range/range-intersectsNode-expected.txt:
+        * fast/dom/Range/script-tests/range-exceptions.js:
+        * fast/dom/Window/get-set-properties-expected.txt:
+        * fast/dom/Window/get-set-properties.html:
+        * fast/dom/Window/resources/window-properties.js:
+        * http/tests/w3c/dom/ranges/Range-comparePoint-expected.txt:
+        * http/tests/w3c/dom/ranges/Range-isPointInRange-expected.txt:
+        * http/tests/w3c/dom/ranges/Range-selectNode-expected.txt:
+        * http/tests/w3c/dom/ranges/Range-set-expected.txt:
+        * http/tests/w3c/dom/ranges/Range-surroundContents-expected.txt:
+        * platform/mac/fast/dom/Window/window-lookup-precedence-expected.txt:
+
</ins><span class="cx"> 2015-08-31  Alexey Proskuryakov  &lt;ap@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Update Windows expectation for fast/events/wheelevent-basic.html after r188793.
</span></span></pre></div>
<a id="trunkLayoutTestsfastdomDOMExceptionRangeExceptionexpectedtxt"></a>
<div class="delfile"><h4>Deleted: trunk/LayoutTests/fast/dom/DOMException/RangeException-expected.txt (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/dom/DOMException/RangeException-expected.txt        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/fast/dom/DOMException/RangeException-expected.txt        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -1,17 +0,0 @@
</span><del>-Tests the properties of the RangeException object.
-
-On success, you will see a series of &quot;PASS&quot; messages, followed by &quot;TEST COMPLETE&quot;.
-
-
-PASS e.toString() is &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot;
-PASS Object.prototype.toString.call(e) is &quot;[object RangeException]&quot;
-PASS Object.prototype.toString.call(e.__proto__) is &quot;[object RangeExceptionPrototype]&quot;
-PASS e.constructor.toString() is &quot;[object RangeExceptionConstructor]&quot;
-PASS e.constructor is window.RangeException
-PASS e.INVALID_NODE_TYPE_ERR is e.constructor.INVALID_NODE_TYPE_ERR
-PASS e.BAD_BOUNDARYPOINTS_ERR is 1
-PASS e.INVALID_NODE_TYPE_ERR is 2
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
</del></span></pre></div>
<a id="trunkLayoutTestsfastdomDOMExceptionRangeExceptionhtml"></a>
<div class="delfile"><h4>Deleted: trunk/LayoutTests/fast/dom/DOMException/RangeException.html (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/dom/DOMException/RangeException.html        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/fast/dom/DOMException/RangeException.html        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -1,10 +0,0 @@
</span><del>-&lt;!DOCTYPE HTML PUBLIC &quot;-//IETF//DTD HTML//EN&quot;&gt;
-&lt;html&gt;
-&lt;head&gt;
-&lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
-&lt;/head&gt;
-&lt;body&gt;
-&lt;script src=&quot;resources/RangeException.js&quot;&gt;&lt;/script&gt;
-&lt;script src=&quot;../../../resources/js-test-post.js&quot;&gt;&lt;/script&gt;
-&lt;/body&gt;
-&lt;/html&gt;
</del></span></pre></div>
<a id="trunkLayoutTestsfastdomDOMExceptionresourcesRangeExceptionjs"></a>
<div class="delfile"><h4>Deleted: trunk/LayoutTests/fast/dom/DOMException/resources/RangeException.js (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/dom/DOMException/resources/RangeException.js        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/fast/dom/DOMException/resources/RangeException.js        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -1,18 +0,0 @@
</span><del>-description(&quot;Tests the properties of the RangeException object.&quot;)
-
-var e;
-try {
-    document.createRange().setStartAfter(document, 0);
-    // raises INVALID_NODE_TYPE_ERR
-} catch (err) {
-    e = err;
-}
-
-shouldBeEqualToString(&quot;e.toString()&quot;, &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot;);
-shouldBeEqualToString(&quot;Object.prototype.toString.call(e)&quot;, &quot;[object RangeException]&quot;);
-shouldBeEqualToString(&quot;Object.prototype.toString.call(e.__proto__)&quot;, &quot;[object RangeExceptionPrototype]&quot;);
-shouldBeEqualToString(&quot;e.constructor.toString()&quot;, &quot;[object RangeExceptionConstructor]&quot;);
-shouldBe(&quot;e.constructor&quot;, &quot;window.RangeException&quot;);
-shouldBe(&quot;e.INVALID_NODE_TYPE_ERR&quot;, &quot;e.constructor.INVALID_NODE_TYPE_ERR&quot;);
-shouldBe(&quot;e.BAD_BOUNDARYPOINTS_ERR&quot;, &quot;1&quot;);
-shouldBe(&quot;e.INVALID_NODE_TYPE_ERR&quot;, &quot;2&quot;);
</del></span></pre></div>
<a id="trunkLayoutTestsfastdomRangerangecompareNodehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/dom/Range/range-compareNode.html (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/dom/Range/range-compareNode.html        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/fast/dom/Range/range-compareNode.html        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -147,7 +147,7 @@
</span><span class="cx">     try {
</span><span class="cx">         range.selectNode(document);
</span><span class="cx">     } catch (e) {
</span><del>-        if(e.code == RangeException.INVALID_NODE_TYPE_ERR) {
</del><ins>+        if(e.code == DOMException.INVALID_NODE_TYPE_ERR) {
</ins><span class="cx">             document.getElementById(&quot;test17&quot;).innerHTML = &quot;test 17 passed: the range has no parent&quot;;
</span><span class="cx">         } else {
</span><span class="cx">             document.getElementById(&quot;test17&quot;).innerHTML = &quot;&lt;span style=\&quot;color: red;\&quot;&gt;test 17 failed error: &quot; + e.message + &quot;\n Code: &quot; + e.code +&quot;&lt;/span&gt;&quot;;
</span></span></pre></div>
<a id="trunkLayoutTestsfastdomRangerangeexceptionsexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/dom/Range/range-exceptions-expected.txt (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/dom/Range/range-exceptions-expected.txt        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/fast/dom/Range/range-exceptions-expected.txt        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -5,8 +5,8 @@
</span><span class="cx"> 
</span><span class="cx"> PASS node.innerHTML is '&lt;bar&gt;AB&lt;moo&gt;C&lt;/moo&gt;DE&lt;/bar&gt;'
</span><span class="cx"> PASS foo.outerHTML is '&lt;foo&gt;&lt;/foo&gt;'
</span><del>-PASS range.surroundContents(foo) threw exception Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2.
-PASS r.surroundContents(document.createElement('a')) threw exception Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1.
</del><ins>+PASS range.surroundContents(foo) threw exception Error: InvalidNodeTypeError: DOM Exception 24.
+PASS r.surroundContents(document.createElement('a')) threw exception Error: InvalidStateError: DOM Exception 11.
</ins><span class="cx"> PASS r.surroundContents(document.createElement('a')) threw exception Error: HierarchyRequestError: DOM Exception 3.
</span><span class="cx"> PASS successfullyParsed is true
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsfastdomRangerangeintersectsNodeexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/dom/Range/range-intersectsNode-expected.txt (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/dom/Range/range-intersectsNode-expected.txt        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/fast/dom/Range/range-intersectsNode-expected.txt        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -53,7 +53,7 @@
</span><span class="cx"> PASS range.intersectsNode(document) threw exception Error: NotFoundError: DOM Exception 8.
</span><span class="cx"> 
</span><span class="cx"> 2.4 Range has no parent
</span><del>-PASS range.selectNode(document) threw exception Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2.
</del><ins>+PASS range.selectNode(document) threw exception Error: InvalidNodeTypeError: DOM Exception 24.
</ins><span class="cx"> 
</span><span class="cx"> 2.5 Wrong documents
</span><span class="cx"> PASS intersects is false
</span></span></pre></div>
<a id="trunkLayoutTestsfastdomRangescripttestsrangeexceptionsjs"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/dom/Range/script-tests/range-exceptions.js (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/dom/Range/script-tests/range-exceptions.js        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/fast/dom/Range/script-tests/range-exceptions.js        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -22,7 +22,7 @@
</span><span class="cx"> var r = document.createRange();
</span><span class="cx"> r.setStart(c1, 2);
</span><span class="cx"> r.setEnd(c2, 3);
</span><del>-shouldThrow(&quot;r.surroundContents(document.createElement('a'))&quot;, '&quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot;');
</del><ins>+shouldThrow(&quot;r.surroundContents(document.createElement('a'))&quot;, '&quot;Error: InvalidStateError: DOM Exception 11&quot;');
</ins><span class="cx"> 
</span><span class="cx"> // But not when we don't try to split the comment.
</span><span class="cx"> r.setStart(c1, 0);
</span></span></pre></div>
<a id="trunkLayoutTestsfastdomWindowgetsetpropertiesexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/dom/Window/get-set-properties-expected.txt (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/dom/Window/get-set-properties-expected.txt        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/fast/dom/Window/get-set-properties-expected.txt        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -167,8 +167,6 @@
</span><span class="cx"> PASS: canSet('Range') should be 'true' and is.
</span><span class="cx"> PASS: canGet('RangeError') should be 'true' and is.
</span><span class="cx"> PASS: canSet('RangeError') should be 'true' and is.
</span><del>-PASS: canGet('RangeException') should be 'true' and is.
-PASS: canSet('RangeException') should be 'true' and is.
</del><span class="cx"> PASS: canGet('ReferenceError') should be 'true' and is.
</span><span class="cx"> PASS: canSet('ReferenceError') should be 'true' and is.
</span><span class="cx"> PASS: canGet('SyntaxError') should be 'true' and is.
</span></span></pre></div>
<a id="trunkLayoutTestsfastdomWindowgetsetpropertieshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/dom/Window/get-set-properties.html (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/dom/Window/get-set-properties.html        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/fast/dom/Window/get-set-properties.html        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -151,7 +151,6 @@
</span><span class="cx">     &quot;ProcessingInstruction&quot;, 
</span><span class="cx">     &quot;Range&quot;, 
</span><span class="cx">     &quot;RangeError&quot;, 
</span><del>-    &quot;RangeException&quot;, 
</del><span class="cx">     &quot;ReferenceError&quot;, 
</span><span class="cx">     &quot;SyntaxError&quot;, 
</span><span class="cx">     &quot;Text&quot;, 
</span></span></pre></div>
<a id="trunkLayoutTestsfastdomWindowresourceswindowpropertiesjs"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/dom/Window/resources/window-properties.js (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/dom/Window/resources/window-properties.js        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/fast/dom/Window/resources/window-properties.js        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -129,7 +129,6 @@
</span><span class="cx">     [&quot;ProcessingInstruction&quot;, &quot;object&quot;],
</span><span class="cx">     [&quot;ProgressEvent&quot;, &quot;object&quot;],
</span><span class="cx">     [&quot;Range&quot;, &quot;object&quot;],
</span><del>-    [&quot;RangeException&quot;, &quot;object&quot;],
</del><span class="cx">     [&quot;Rect&quot;, &quot;object&quot;],
</span><span class="cx">     [&quot;SVGAngle&quot;, &quot;object&quot;],
</span><span class="cx">     [&quot;SVGColor&quot;, &quot;object&quot;],
</span></span></pre></div>
<a id="trunkLayoutTestshttptestssecuritycrossframeaccessgetOwnPropertyDescriptorexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/security/cross-frame-access-getOwnPropertyDescriptor-expected.txt (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/security/cross-frame-access-getOwnPropertyDescriptor-expected.txt        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/http/tests/security/cross-frame-access-getOwnPropertyDescriptor-expected.txt        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -149,7 +149,6 @@
</span><span class="cx"> PASS: canGetDescriptor(targetWindow, 'ProcessingInstruction') should be 'false' and is.
</span><span class="cx"> PASS: canGetDescriptor(targetWindow, 'Range') should be 'false' and is.
</span><span class="cx"> PASS: canGetDescriptor(targetWindow, 'RangeError') should be 'false' and is.
</span><del>-PASS: canGetDescriptor(targetWindow, 'RangeException') should be 'false' and is.
</del><span class="cx"> PASS: canGetDescriptor(targetWindow, 'ReferenceError') should be 'false' and is.
</span><span class="cx"> PASS: canGetDescriptor(targetWindow, 'SyntaxError') should be 'false' and is.
</span><span class="cx"> PASS: canGetDescriptor(targetWindow, 'Text') should be 'false' and is.
</span></span></pre></div>
<a id="trunkLayoutTestshttptestssecuritycrossframeaccessgetOwnPropertyDescriptorhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/security/cross-frame-access-getOwnPropertyDescriptor.html (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/security/cross-frame-access-getOwnPropertyDescriptor.html        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/http/tests/security/cross-frame-access-getOwnPropertyDescriptor.html        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -90,7 +90,6 @@
</span><span class="cx">             &quot;ProcessingInstruction&quot;, 
</span><span class="cx">             &quot;Range&quot;, 
</span><span class="cx">             &quot;RangeError&quot;, 
</span><del>-            &quot;RangeException&quot;, 
</del><span class="cx">             &quot;ReferenceError&quot;, 
</span><span class="cx">             &quot;SyntaxError&quot;, 
</span><span class="cx">             &quot;Text&quot;, 
</span></span></pre></div>
<a id="trunkLayoutTestshttptestssecuritycrossframeaccessputexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/security/cross-frame-access-put-expected.txt (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/security/cross-frame-access-put-expected.txt        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/http/tests/security/cross-frame-access-put-expected.txt        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -79,7 +79,7 @@
</span><span class="cx"> ALERT: PASS: window.ProcessingInstruction should be '[object ProcessingInstructionConstructor]' and is.
</span><span class="cx"> ALERT: PASS: window.Range should be '[object RangeConstructor]' and is.
</span><span class="cx"> ALERT: PASS: window.RangeError should be 'function RangeError() {    [native code]}' and is.
</span><del>-ALERT: PASS: window.RangeException should be '[object RangeExceptionConstructor]' and is.
</del><ins>+ALERT: PASS: window.RangeException should be 'undefined' and is.
</ins><span class="cx"> ALERT: PASS: window.ReferenceError should be 'function ReferenceError() {    [native code]}' and is.
</span><span class="cx"> ALERT: PASS: window.SyntaxError should be 'function SyntaxError() {    [native code]}' and is.
</span><span class="cx"> ALERT: PASS: window.Text should be '[object TextConstructor]' and is.
</span><span class="lines">@@ -276,15 +276,15 @@
</span><span class="cx"> CONSOLE MESSAGE: line 123: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</span><span class="cx"> CONSOLE MESSAGE: line 124: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</span><span class="cx"> CONSOLE MESSAGE: line 125: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</span><del>-CONSOLE MESSAGE: line 126: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
-CONSOLE MESSAGE: line 135: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
-CONSOLE MESSAGE: line 137: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</del><ins>+CONSOLE MESSAGE: line 134: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
+CONSOLE MESSAGE: line 136: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
+CONSOLE MESSAGE: line 138: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</ins><span class="cx"> CONSOLE MESSAGE: line 139: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</span><span class="cx"> CONSOLE MESSAGE: line 140: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</span><span class="cx"> CONSOLE MESSAGE: line 141: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</span><span class="cx"> CONSOLE MESSAGE: line 142: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</span><span class="cx"> CONSOLE MESSAGE: line 143: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</span><del>-CONSOLE MESSAGE: line 144: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</del><ins>+CONSOLE MESSAGE: line 145: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</ins><span class="cx"> CONSOLE MESSAGE: line 146: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</span><span class="cx"> CONSOLE MESSAGE: line 147: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</span><span class="cx"> CONSOLE MESSAGE: line 148: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</span><span class="lines">@@ -323,7 +323,7 @@
</span><span class="cx"> CONSOLE MESSAGE: line 181: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</span><span class="cx"> CONSOLE MESSAGE: line 182: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</span><span class="cx"> CONSOLE MESSAGE: line 183: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</span><del>-CONSOLE MESSAGE: line 184: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</del><ins>+CONSOLE MESSAGE: line 186: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</ins><span class="cx"> CONSOLE MESSAGE: line 187: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</span><span class="cx"> CONSOLE MESSAGE: line 188: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</span><span class="cx"> CONSOLE MESSAGE: line 189: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</span><span class="lines">@@ -339,7 +339,7 @@
</span><span class="cx"> CONSOLE MESSAGE: line 199: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</span><span class="cx"> CONSOLE MESSAGE: line 200: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</span><span class="cx"> CONSOLE MESSAGE: line 201: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</span><del>-CONSOLE MESSAGE: line 202: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</del><ins>+CONSOLE MESSAGE: line 204: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</ins><span class="cx"> CONSOLE MESSAGE: line 205: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</span><span class="cx"> CONSOLE MESSAGE: line 206: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</span><span class="cx"> CONSOLE MESSAGE: line 207: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</span><span class="lines">@@ -372,7 +372,6 @@
</span><span class="cx"> CONSOLE MESSAGE: line 234: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</span><span class="cx"> CONSOLE MESSAGE: line 235: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</span><span class="cx"> CONSOLE MESSAGE: line 236: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</span><del>-CONSOLE MESSAGE: line 237: Blocked a frame with origin &quot;http://127.0.0.1:8000&quot; from accessing a frame with origin &quot;http://localhost:8000&quot;. Protocols, domains, and ports must match.
</del><span class="cx"> This test checks cross-frame access security of window attribute setters (rdar://problem/5326791).
</span><span class="cx"> 
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestshttptestssecuritycrossframeaccessputhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/security/cross-frame-access-put.html (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/security/cross-frame-access-put.html        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/http/tests/security/cross-frame-access-put.html        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -114,7 +114,6 @@
</span><span class="cx">     setForbiddenProperty(targetWindow, &quot;ProcessingInstruction&quot;);
</span><span class="cx">     setForbiddenProperty(targetWindow, &quot;Range&quot;);
</span><span class="cx">     setForbiddenProperty(targetWindow, &quot;RangeError&quot;);
</span><del>-    setForbiddenProperty(targetWindow, &quot;RangeException&quot;);
</del><span class="cx">     setForbiddenProperty(targetWindow, &quot;ReferenceError&quot;);
</span><span class="cx">     setForbiddenProperty(targetWindow, &quot;SyntaxError&quot;);
</span><span class="cx">     setForbiddenProperty(targetWindow, &quot;Text&quot;);
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3cdomhistoricalexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/w3c/dom/historical-expected.txt (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/dom/historical-expected.txt        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/http/tests/w3c/dom/historical-expected.txt        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -15,7 +15,7 @@
</span><span class="cx"> PASS Historical DOM features must be removed: Notation 
</span><span class="cx"> PASS Historical DOM features must be removed: TypeInfo 
</span><span class="cx"> PASS Historical DOM features must be removed: UserDataHandler 
</span><del>-FAIL Historical DOM features must be removed: RangeException assert_equals: expected (undefined) undefined but got (object) object &quot;[object RangeExceptionConstructor]&quot;
</del><ins>+PASS Historical DOM features must be removed: RangeException 
</ins><span class="cx"> FAIL Historical DOM features must be removed: createCDATASection assert_equals: expected (undefined) undefined but got (function) function &quot;function createCDATASection() {
</span><span class="cx">     [native code]
</span><span class="cx"> }&quot;
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3cdomrangesRangecomparePointexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/w3c/dom/ranges/Range-comparePoint-expected.txt (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/dom/ranges/Range-comparePoint-expected.txt        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/http/tests/w3c/dom/ranges/Range-comparePoint-expected.txt        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -4979,366 +4979,186 @@
</span><span class="cx"> PASS Point 82 [xmlDocfrag, 0], range 57 [detachedForeignComment, 4, detachedForeignComment, 4] 
</span><span class="cx"> PASS Point 82 [xmlDocfrag, 0], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] 
</span><span class="cx"> PASS Point 82 [xmlDocfrag, 0], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] 
</span><del>-FAIL Point 83 [doctype, 0], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 10 [document.documentElement, 0, document.documentElement, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 11 [document.documentElement, 0, document.documentElement, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 12 [document.documentElement, 1, document.documentElement, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 13 [document.head, 1, document.head, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 14 [document.body, 4, document.body, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 16 [paras[0], 0, paras[0], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 17 [detachedPara1, 0, detachedPara1, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 20 [paras[0].firstChild, 3, paras[3], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 21 [paras[0], 0, paras[0].firstChild, 7] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 22 [testDiv, 2, paras[4], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 23 [document, 0, document, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 24 [document, 0, document, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 25 [comment, 2, comment, 3] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 26 [testDiv, 0, comment, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 27 [foreignDoc, 1, foreignComment, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 28 [foreignDoc.body, 0, foreignTextNode, 36] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 29 [xmlDoc, 1, xmlComment, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 30 [detachedTextNode, 0, detachedTextNode, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 33 [detachedComment, 3, detachedComment, 4] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 34 [detachedForeignComment, 0, detachedForeignComment, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 35 [detachedXmlComment, 2, detachedXmlComment, 6] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 36 [docfrag, 0, docfrag, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 37 [processingInstruction, 0, processingInstruction, 4] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 41 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 42 [foreignDoc.head, 1, foreignDoc.head, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 43 [foreignDoc.body, 0, foreignDoc.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 44 [paras[0], 0, paras[0], 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 45 [detachedPara1, 0, detachedPara1, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 46 [testDiv, 1, paras[2].firstChild, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 47 [document.documentElement, 1, document.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 48 [foreignDoc.documentElement, 1, foreignDoc.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 49 [document, 1, document, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 50 [paras[2].firstChild, 4, comment, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 51 [paras[3], 1, comment, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 52 [foreignDoc, 0, foreignDoc, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 53 [xmlDoc, 0, xmlDoc, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 54 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 55 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 56 [detachedComment, 5, detachedComment, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 57 [detachedForeignComment, 4, detachedForeignComment, 4] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 10 [document.documentElement, 0, document.documentElement, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 11 [document.documentElement, 0, document.documentElement, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 12 [document.documentElement, 1, document.documentElement, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 13 [document.head, 1, document.head, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 14 [document.body, 4, document.body, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 16 [paras[0], 0, paras[0], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 17 [detachedPara1, 0, detachedPara1, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 20 [paras[0].firstChild, 3, paras[3], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 21 [paras[0], 0, paras[0].firstChild, 7] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 22 [testDiv, 2, paras[4], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 23 [document, 0, document, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 24 [document, 0, document, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 25 [comment, 2, comment, 3] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 26 [testDiv, 0, comment, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 27 [foreignDoc, 1, foreignComment, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 28 [foreignDoc.body, 0, foreignTextNode, 36] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 29 [xmlDoc, 1, xmlComment, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 30 [detachedTextNode, 0, detachedTextNode, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 33 [detachedComment, 3, detachedComment, 4] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 34 [detachedForeignComment, 0, detachedForeignComment, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 35 [detachedXmlComment, 2, detachedXmlComment, 6] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 36 [docfrag, 0, docfrag, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 37 [processingInstruction, 0, processingInstruction, 4] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 41 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 42 [foreignDoc.head, 1, foreignDoc.head, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 43 [foreignDoc.body, 0, foreignDoc.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 44 [paras[0], 0, paras[0], 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 45 [detachedPara1, 0, detachedPara1, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 46 [testDiv, 1, paras[2].firstChild, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 47 [document.documentElement, 1, document.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 48 [foreignDoc.documentElement, 1, foreignDoc.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 49 [document, 1, document, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 50 [paras[2].firstChild, 4, comment, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 51 [paras[3], 1, comment, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 52 [foreignDoc, 0, foreignDoc, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 53 [xmlDoc, 0, xmlDoc, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 54 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 55 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 56 [detachedComment, 5, detachedComment, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 57 [detachedForeignComment, 4, detachedForeignComment, 4] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 10 [document.documentElement, 0, document.documentElement, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 11 [document.documentElement, 0, document.documentElement, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 12 [document.documentElement, 1, document.documentElement, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 13 [document.head, 1, document.head, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 14 [document.body, 4, document.body, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 16 [paras[0], 0, paras[0], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 17 [detachedPara1, 0, detachedPara1, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 20 [paras[0].firstChild, 3, paras[3], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 21 [paras[0], 0, paras[0].firstChild, 7] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 22 [testDiv, 2, paras[4], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 23 [document, 0, document, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 24 [document, 0, document, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 25 [comment, 2, comment, 3] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 26 [testDiv, 0, comment, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 27 [foreignDoc, 1, foreignComment, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 28 [foreignDoc.body, 0, foreignTextNode, 36] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 29 [xmlDoc, 1, xmlComment, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 30 [detachedTextNode, 0, detachedTextNode, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 33 [detachedComment, 3, detachedComment, 4] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 34 [detachedForeignComment, 0, detachedForeignComment, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 35 [detachedXmlComment, 2, detachedXmlComment, 6] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 36 [docfrag, 0, docfrag, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 37 [processingInstruction, 0, processingInstruction, 4] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 41 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 42 [foreignDoc.head, 1, foreignDoc.head, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 43 [foreignDoc.body, 0, foreignDoc.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 44 [paras[0], 0, paras[0], 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 45 [detachedPara1, 0, detachedPara1, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 46 [testDiv, 1, paras[2].firstChild, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 47 [document.documentElement, 1, document.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 48 [foreignDoc.documentElement, 1, foreignDoc.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 49 [document, 1, document, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 50 [paras[2].firstChild, 4, comment, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 51 [paras[3], 1, comment, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 52 [foreignDoc, 0, foreignDoc, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 53 [xmlDoc, 0, xmlDoc, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 54 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 55 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 56 [detachedComment, 5, detachedComment, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 57 [detachedForeignComment, 4, detachedForeignComment, 4] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.comparePoint(node, offset);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS Point 83 [doctype, 0], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] 
+PASS Point 83 [doctype, 0], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] 
+PASS Point 83 [doctype, 0], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] 
+PASS Point 83 [doctype, 0], range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] 
+PASS Point 83 [doctype, 0], range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] 
+PASS Point 83 [doctype, 0], range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9] 
+PASS Point 83 [doctype, 0], range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] 
+PASS Point 83 [doctype, 0], range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] 
+PASS Point 83 [doctype, 0], range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] 
+PASS Point 83 [doctype, 0], range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] 
+PASS Point 83 [doctype, 0], range 10 [document.documentElement, 0, document.documentElement, 1] 
+PASS Point 83 [doctype, 0], range 11 [document.documentElement, 0, document.documentElement, 2] 
+PASS Point 83 [doctype, 0], range 12 [document.documentElement, 1, document.documentElement, 2] 
+PASS Point 83 [doctype, 0], range 13 [document.head, 1, document.head, 1] 
+PASS Point 83 [doctype, 0], range 14 [document.body, 4, document.body, 5] 
+PASS Point 83 [doctype, 0], range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] 
+PASS Point 83 [doctype, 0], range 16 [paras[0], 0, paras[0], 1] 
+PASS Point 83 [doctype, 0], range 17 [detachedPara1, 0, detachedPara1, 1] 
+PASS Point 83 [doctype, 0], range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0] 
+PASS Point 83 [doctype, 0], range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8] 
+PASS Point 83 [doctype, 0], range 20 [paras[0].firstChild, 3, paras[3], 1] 
+PASS Point 83 [doctype, 0], range 21 [paras[0], 0, paras[0].firstChild, 7] 
+PASS Point 83 [doctype, 0], range 22 [testDiv, 2, paras[4], 1] 
+PASS Point 83 [doctype, 0], range 23 [document, 0, document, 1] 
+PASS Point 83 [doctype, 0], range 24 [document, 0, document, 2] 
+PASS Point 83 [doctype, 0], range 25 [comment, 2, comment, 3] 
+PASS Point 83 [doctype, 0], range 26 [testDiv, 0, comment, 5] 
+PASS Point 83 [doctype, 0], range 27 [foreignDoc, 1, foreignComment, 2] 
+PASS Point 83 [doctype, 0], range 28 [foreignDoc.body, 0, foreignTextNode, 36] 
+PASS Point 83 [doctype, 0], range 29 [xmlDoc, 1, xmlComment, 0] 
+PASS Point 83 [doctype, 0], range 30 [detachedTextNode, 0, detachedTextNode, 8] 
+PASS Point 83 [doctype, 0], range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] 
+PASS Point 83 [doctype, 0], range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] 
+PASS Point 83 [doctype, 0], range 33 [detachedComment, 3, detachedComment, 4] 
+PASS Point 83 [doctype, 0], range 34 [detachedForeignComment, 0, detachedForeignComment, 1] 
+PASS Point 83 [doctype, 0], range 35 [detachedXmlComment, 2, detachedXmlComment, 6] 
+PASS Point 83 [doctype, 0], range 36 [docfrag, 0, docfrag, 0] 
+PASS Point 83 [doctype, 0], range 37 [processingInstruction, 0, processingInstruction, 4] 
+PASS Point 83 [doctype, 0], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] 
+PASS Point 83 [doctype, 0], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] 
+PASS Point 83 [doctype, 0], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] 
+PASS Point 83 [doctype, 0], range 41 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] 
+PASS Point 83 [doctype, 0], range 42 [foreignDoc.head, 1, foreignDoc.head, 1] 
+PASS Point 83 [doctype, 0], range 43 [foreignDoc.body, 0, foreignDoc.body, 0] 
+PASS Point 83 [doctype, 0], range 44 [paras[0], 0, paras[0], 0] 
+PASS Point 83 [doctype, 0], range 45 [detachedPara1, 0, detachedPara1, 0] 
+PASS Point 83 [doctype, 0], range 46 [testDiv, 1, paras[2].firstChild, 5] 
+PASS Point 83 [doctype, 0], range 47 [document.documentElement, 1, document.body, 0] 
+PASS Point 83 [doctype, 0], range 48 [foreignDoc.documentElement, 1, foreignDoc.body, 0] 
+PASS Point 83 [doctype, 0], range 49 [document, 1, document, 2] 
+PASS Point 83 [doctype, 0], range 50 [paras[2].firstChild, 4, comment, 2] 
+PASS Point 83 [doctype, 0], range 51 [paras[3], 1, comment, 8] 
+PASS Point 83 [doctype, 0], range 52 [foreignDoc, 0, foreignDoc, 0] 
+PASS Point 83 [doctype, 0], range 53 [xmlDoc, 0, xmlDoc, 0] 
+PASS Point 83 [doctype, 0], range 54 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] 
+PASS Point 83 [doctype, 0], range 55 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] 
+PASS Point 83 [doctype, 0], range 56 [detachedComment, 5, detachedComment, 5] 
+PASS Point 83 [doctype, 0], range 57 [detachedForeignComment, 4, detachedForeignComment, 4] 
+PASS Point 83 [doctype, 0], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] 
+PASS Point 83 [doctype, 0], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] 
+PASS Point 84 [doctype, -17], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] 
+PASS Point 84 [doctype, -17], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] 
+PASS Point 84 [doctype, -17], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] 
+PASS Point 84 [doctype, -17], range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] 
+PASS Point 84 [doctype, -17], range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] 
+PASS Point 84 [doctype, -17], range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9] 
+PASS Point 84 [doctype, -17], range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] 
+PASS Point 84 [doctype, -17], range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] 
+PASS Point 84 [doctype, -17], range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] 
+PASS Point 84 [doctype, -17], range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] 
+PASS Point 84 [doctype, -17], range 10 [document.documentElement, 0, document.documentElement, 1] 
+PASS Point 84 [doctype, -17], range 11 [document.documentElement, 0, document.documentElement, 2] 
+PASS Point 84 [doctype, -17], range 12 [document.documentElement, 1, document.documentElement, 2] 
+PASS Point 84 [doctype, -17], range 13 [document.head, 1, document.head, 1] 
+PASS Point 84 [doctype, -17], range 14 [document.body, 4, document.body, 5] 
+PASS Point 84 [doctype, -17], range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] 
+PASS Point 84 [doctype, -17], range 16 [paras[0], 0, paras[0], 1] 
+PASS Point 84 [doctype, -17], range 17 [detachedPara1, 0, detachedPara1, 1] 
+PASS Point 84 [doctype, -17], range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0] 
+PASS Point 84 [doctype, -17], range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8] 
+PASS Point 84 [doctype, -17], range 20 [paras[0].firstChild, 3, paras[3], 1] 
+PASS Point 84 [doctype, -17], range 21 [paras[0], 0, paras[0].firstChild, 7] 
+PASS Point 84 [doctype, -17], range 22 [testDiv, 2, paras[4], 1] 
+PASS Point 84 [doctype, -17], range 23 [document, 0, document, 1] 
+PASS Point 84 [doctype, -17], range 24 [document, 0, document, 2] 
+PASS Point 84 [doctype, -17], range 25 [comment, 2, comment, 3] 
+PASS Point 84 [doctype, -17], range 26 [testDiv, 0, comment, 5] 
+PASS Point 84 [doctype, -17], range 27 [foreignDoc, 1, foreignComment, 2] 
+PASS Point 84 [doctype, -17], range 28 [foreignDoc.body, 0, foreignTextNode, 36] 
+PASS Point 84 [doctype, -17], range 29 [xmlDoc, 1, xmlComment, 0] 
+PASS Point 84 [doctype, -17], range 30 [detachedTextNode, 0, detachedTextNode, 8] 
+PASS Point 84 [doctype, -17], range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] 
+PASS Point 84 [doctype, -17], range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] 
+PASS Point 84 [doctype, -17], range 33 [detachedComment, 3, detachedComment, 4] 
+PASS Point 84 [doctype, -17], range 34 [detachedForeignComment, 0, detachedForeignComment, 1] 
+PASS Point 84 [doctype, -17], range 35 [detachedXmlComment, 2, detachedXmlComment, 6] 
+PASS Point 84 [doctype, -17], range 36 [docfrag, 0, docfrag, 0] 
+PASS Point 84 [doctype, -17], range 37 [processingInstruction, 0, processingInstruction, 4] 
+PASS Point 84 [doctype, -17], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] 
+PASS Point 84 [doctype, -17], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] 
+PASS Point 84 [doctype, -17], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] 
+PASS Point 84 [doctype, -17], range 41 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] 
+PASS Point 84 [doctype, -17], range 42 [foreignDoc.head, 1, foreignDoc.head, 1] 
+PASS Point 84 [doctype, -17], range 43 [foreignDoc.body, 0, foreignDoc.body, 0] 
+PASS Point 84 [doctype, -17], range 44 [paras[0], 0, paras[0], 0] 
+PASS Point 84 [doctype, -17], range 45 [detachedPara1, 0, detachedPara1, 0] 
+PASS Point 84 [doctype, -17], range 46 [testDiv, 1, paras[2].firstChild, 5] 
+PASS Point 84 [doctype, -17], range 47 [document.documentElement, 1, document.body, 0] 
+PASS Point 84 [doctype, -17], range 48 [foreignDoc.documentElement, 1, foreignDoc.body, 0] 
+PASS Point 84 [doctype, -17], range 49 [document, 1, document, 2] 
+PASS Point 84 [doctype, -17], range 50 [paras[2].firstChild, 4, comment, 2] 
+PASS Point 84 [doctype, -17], range 51 [paras[3], 1, comment, 8] 
+PASS Point 84 [doctype, -17], range 52 [foreignDoc, 0, foreignDoc, 0] 
+PASS Point 84 [doctype, -17], range 53 [xmlDoc, 0, xmlDoc, 0] 
+PASS Point 84 [doctype, -17], range 54 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] 
+PASS Point 84 [doctype, -17], range 55 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] 
+PASS Point 84 [doctype, -17], range 56 [detachedComment, 5, detachedComment, 5] 
+PASS Point 84 [doctype, -17], range 57 [detachedForeignComment, 4, detachedForeignComment, 4] 
+PASS Point 84 [doctype, -17], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] 
+PASS Point 84 [doctype, -17], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] 
+PASS Point 85 [doctype, 1], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] 
+PASS Point 85 [doctype, 1], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] 
+PASS Point 85 [doctype, 1], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] 
+PASS Point 85 [doctype, 1], range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] 
+PASS Point 85 [doctype, 1], range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] 
+PASS Point 85 [doctype, 1], range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9] 
+PASS Point 85 [doctype, 1], range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] 
+PASS Point 85 [doctype, 1], range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] 
+PASS Point 85 [doctype, 1], range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] 
+PASS Point 85 [doctype, 1], range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] 
+PASS Point 85 [doctype, 1], range 10 [document.documentElement, 0, document.documentElement, 1] 
+PASS Point 85 [doctype, 1], range 11 [document.documentElement, 0, document.documentElement, 2] 
+PASS Point 85 [doctype, 1], range 12 [document.documentElement, 1, document.documentElement, 2] 
+PASS Point 85 [doctype, 1], range 13 [document.head, 1, document.head, 1] 
+PASS Point 85 [doctype, 1], range 14 [document.body, 4, document.body, 5] 
+PASS Point 85 [doctype, 1], range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] 
+PASS Point 85 [doctype, 1], range 16 [paras[0], 0, paras[0], 1] 
+PASS Point 85 [doctype, 1], range 17 [detachedPara1, 0, detachedPara1, 1] 
+PASS Point 85 [doctype, 1], range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0] 
+PASS Point 85 [doctype, 1], range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8] 
+PASS Point 85 [doctype, 1], range 20 [paras[0].firstChild, 3, paras[3], 1] 
+PASS Point 85 [doctype, 1], range 21 [paras[0], 0, paras[0].firstChild, 7] 
+PASS Point 85 [doctype, 1], range 22 [testDiv, 2, paras[4], 1] 
+PASS Point 85 [doctype, 1], range 23 [document, 0, document, 1] 
+PASS Point 85 [doctype, 1], range 24 [document, 0, document, 2] 
+PASS Point 85 [doctype, 1], range 25 [comment, 2, comment, 3] 
+PASS Point 85 [doctype, 1], range 26 [testDiv, 0, comment, 5] 
+PASS Point 85 [doctype, 1], range 27 [foreignDoc, 1, foreignComment, 2] 
+PASS Point 85 [doctype, 1], range 28 [foreignDoc.body, 0, foreignTextNode, 36] 
+PASS Point 85 [doctype, 1], range 29 [xmlDoc, 1, xmlComment, 0] 
+PASS Point 85 [doctype, 1], range 30 [detachedTextNode, 0, detachedTextNode, 8] 
+PASS Point 85 [doctype, 1], range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] 
+PASS Point 85 [doctype, 1], range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] 
+PASS Point 85 [doctype, 1], range 33 [detachedComment, 3, detachedComment, 4] 
+PASS Point 85 [doctype, 1], range 34 [detachedForeignComment, 0, detachedForeignComment, 1] 
+PASS Point 85 [doctype, 1], range 35 [detachedXmlComment, 2, detachedXmlComment, 6] 
+PASS Point 85 [doctype, 1], range 36 [docfrag, 0, docfrag, 0] 
+PASS Point 85 [doctype, 1], range 37 [processingInstruction, 0, processingInstruction, 4] 
+PASS Point 85 [doctype, 1], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] 
+PASS Point 85 [doctype, 1], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] 
+PASS Point 85 [doctype, 1], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] 
+PASS Point 85 [doctype, 1], range 41 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] 
+PASS Point 85 [doctype, 1], range 42 [foreignDoc.head, 1, foreignDoc.head, 1] 
+PASS Point 85 [doctype, 1], range 43 [foreignDoc.body, 0, foreignDoc.body, 0] 
+PASS Point 85 [doctype, 1], range 44 [paras[0], 0, paras[0], 0] 
+PASS Point 85 [doctype, 1], range 45 [detachedPara1, 0, detachedPara1, 0] 
+PASS Point 85 [doctype, 1], range 46 [testDiv, 1, paras[2].firstChild, 5] 
+PASS Point 85 [doctype, 1], range 47 [document.documentElement, 1, document.body, 0] 
+PASS Point 85 [doctype, 1], range 48 [foreignDoc.documentElement, 1, foreignDoc.body, 0] 
+PASS Point 85 [doctype, 1], range 49 [document, 1, document, 2] 
+PASS Point 85 [doctype, 1], range 50 [paras[2].firstChild, 4, comment, 2] 
+PASS Point 85 [doctype, 1], range 51 [paras[3], 1, comment, 8] 
+PASS Point 85 [doctype, 1], range 52 [foreignDoc, 0, foreignDoc, 0] 
+PASS Point 85 [doctype, 1], range 53 [xmlDoc, 0, xmlDoc, 0] 
+PASS Point 85 [doctype, 1], range 54 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] 
+PASS Point 85 [doctype, 1], range 55 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] 
+PASS Point 85 [doctype, 1], range 56 [detachedComment, 5, detachedComment, 5] 
+PASS Point 85 [doctype, 1], range 57 [detachedForeignComment, 4, detachedForeignComment, 4] 
+PASS Point 85 [doctype, 1], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] 
+PASS Point 85 [doctype, 1], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] 
</ins><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] 
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3cdomrangesRangeisPointInRangeexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/w3c/dom/ranges/Range-isPointInRange-expected.txt (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/dom/ranges/Range-isPointInRange-expected.txt        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/http/tests/w3c/dom/ranges/Range-isPointInRange-expected.txt        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -5128,279 +5128,189 @@
</span><span class="cx"> PASS Point 82 [xmlDocfrag, 0], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] 
</span><span class="cx"> FAIL Point 82 [xmlDocfrag, 0], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] assert_true: Must return true if point is not before start, after end, or in different tree expected true got false
</span><span class="cx"> PASS Point 82 [xmlDocfrag, 0], range 60 detached 
</span><del>-FAIL Point 83 [doctype, 0], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL Point 83 [doctype, 0], range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+PASS Point 83 [doctype, 0], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] 
+PASS Point 83 [doctype, 0], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] 
+PASS Point 83 [doctype, 0], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] 
+PASS Point 83 [doctype, 0], range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] 
+PASS Point 83 [doctype, 0], range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] 
+PASS Point 83 [doctype, 0], range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9] 
+FAIL Point 83 [doctype, 0], range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] InvalidNodeTypeError: DOM Exception 24
+FAIL Point 83 [doctype, 0], range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS Point 83 [doctype, 0], range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] 
</span><span class="cx"> PASS Point 83 [doctype, 0], range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] 
</span><del>-FAIL Point 83 [doctype, 0], range 10 [document.documentElement, 0, document.documentElement, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 11 [document.documentElement, 0, document.documentElement, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 12 [document.documentElement, 1, document.documentElement, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 13 [document.head, 1, document.head, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 14 [document.body, 4, document.body, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS Point 83 [doctype, 0], range 10 [document.documentElement, 0, document.documentElement, 1] 
+PASS Point 83 [doctype, 0], range 11 [document.documentElement, 0, document.documentElement, 2] 
+PASS Point 83 [doctype, 0], range 12 [document.documentElement, 1, document.documentElement, 2] 
+PASS Point 83 [doctype, 0], range 13 [document.head, 1, document.head, 1] 
+PASS Point 83 [doctype, 0], range 14 [document.body, 4, document.body, 5] 
</ins><span class="cx"> PASS Point 83 [doctype, 0], range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] 
</span><del>-FAIL Point 83 [doctype, 0], range 16 [paras[0], 0, paras[0], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 17 [detachedPara1, 0, detachedPara1, 1] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL Point 83 [doctype, 0], range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 20 [paras[0].firstChild, 3, paras[3], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 21 [paras[0], 0, paras[0].firstChild, 7] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 22 [testDiv, 2, paras[4], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 23 [document, 0, document, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 24 [document, 0, document, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 25 [comment, 2, comment, 3] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 26 [testDiv, 0, comment, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS Point 83 [doctype, 0], range 16 [paras[0], 0, paras[0], 1] 
+FAIL Point 83 [doctype, 0], range 17 [detachedPara1, 0, detachedPara1, 1] InvalidNodeTypeError: DOM Exception 24
+PASS Point 83 [doctype, 0], range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0] 
+PASS Point 83 [doctype, 0], range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8] 
+PASS Point 83 [doctype, 0], range 20 [paras[0].firstChild, 3, paras[3], 1] 
+PASS Point 83 [doctype, 0], range 21 [paras[0], 0, paras[0].firstChild, 7] 
+PASS Point 83 [doctype, 0], range 22 [testDiv, 2, paras[4], 1] 
+PASS Point 83 [doctype, 0], range 23 [document, 0, document, 1] 
+PASS Point 83 [doctype, 0], range 24 [document, 0, document, 2] 
+PASS Point 83 [doctype, 0], range 25 [comment, 2, comment, 3] 
+PASS Point 83 [doctype, 0], range 26 [testDiv, 0, comment, 5] 
</ins><span class="cx"> PASS Point 83 [doctype, 0], range 27 [foreignDoc, 1, foreignComment, 2] 
</span><span class="cx"> PASS Point 83 [doctype, 0], range 28 [foreignDoc.body, 0, foreignTextNode, 36] 
</span><span class="cx"> PASS Point 83 [doctype, 0], range 29 [xmlDoc, 1, xmlComment, 0] 
</span><del>-FAIL Point 83 [doctype, 0], range 30 [detachedTextNode, 0, detachedTextNode, 8] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL Point 83 [doctype, 0], range 30 [detachedTextNode, 0, detachedTextNode, 8] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS Point 83 [doctype, 0], range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] 
</span><span class="cx"> PASS Point 83 [doctype, 0], range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] 
</span><del>-FAIL Point 83 [doctype, 0], range 33 [detachedComment, 3, detachedComment, 4] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL Point 83 [doctype, 0], range 33 [detachedComment, 3, detachedComment, 4] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS Point 83 [doctype, 0], range 34 [detachedForeignComment, 0, detachedForeignComment, 1] 
</span><span class="cx"> PASS Point 83 [doctype, 0], range 35 [detachedXmlComment, 2, detachedXmlComment, 6] 
</span><del>-FAIL Point 83 [doctype, 0], range 36 [docfrag, 0, docfrag, 0] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL Point 83 [doctype, 0], range 36 [docfrag, 0, docfrag, 0] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS Point 83 [doctype, 0], range 37 [processingInstruction, 0, processingInstruction, 4] 
</span><del>-FAIL Point 83 [doctype, 0], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+PASS Point 83 [doctype, 0], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] 
+PASS Point 83 [doctype, 0], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] 
+FAIL Point 83 [doctype, 0], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS Point 83 [doctype, 0], range 41 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] 
</span><span class="cx"> PASS Point 83 [doctype, 0], range 42 [foreignDoc.head, 1, foreignDoc.head, 1] 
</span><span class="cx"> PASS Point 83 [doctype, 0], range 43 [foreignDoc.body, 0, foreignDoc.body, 0] 
</span><del>-FAIL Point 83 [doctype, 0], range 44 [paras[0], 0, paras[0], 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 45 [detachedPara1, 0, detachedPara1, 0] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL Point 83 [doctype, 0], range 46 [testDiv, 1, paras[2].firstChild, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 47 [document.documentElement, 1, document.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS Point 83 [doctype, 0], range 44 [paras[0], 0, paras[0], 0] 
+FAIL Point 83 [doctype, 0], range 45 [detachedPara1, 0, detachedPara1, 0] InvalidNodeTypeError: DOM Exception 24
+PASS Point 83 [doctype, 0], range 46 [testDiv, 1, paras[2].firstChild, 5] 
+PASS Point 83 [doctype, 0], range 47 [document.documentElement, 1, document.body, 0] 
</ins><span class="cx"> PASS Point 83 [doctype, 0], range 48 [foreignDoc.documentElement, 1, foreignDoc.body, 0] 
</span><del>-FAIL Point 83 [doctype, 0], range 49 [document, 1, document, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 50 [paras[2].firstChild, 4, comment, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 51 [paras[3], 1, comment, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS Point 83 [doctype, 0], range 49 [document, 1, document, 2] 
+PASS Point 83 [doctype, 0], range 50 [paras[2].firstChild, 4, comment, 2] 
+PASS Point 83 [doctype, 0], range 51 [paras[3], 1, comment, 8] 
</ins><span class="cx"> PASS Point 83 [doctype, 0], range 52 [foreignDoc, 0, foreignDoc, 0] 
</span><span class="cx"> PASS Point 83 [doctype, 0], range 53 [xmlDoc, 0, xmlDoc, 0] 
</span><span class="cx"> PASS Point 83 [doctype, 0], range 54 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] 
</span><span class="cx"> PASS Point 83 [doctype, 0], range 55 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] 
</span><del>-FAIL Point 83 [doctype, 0], range 56 [detachedComment, 5, detachedComment, 5] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL Point 83 [doctype, 0], range 56 [detachedComment, 5, detachedComment, 5] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS Point 83 [doctype, 0], range 57 [detachedForeignComment, 4, detachedForeignComment, 4] 
</span><span class="cx"> PASS Point 83 [doctype, 0], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] 
</span><span class="cx"> PASS Point 83 [doctype, 0], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] 
</span><del>-FAIL Point 83 [doctype, 0], range 60 detached assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL Point 84 [doctype, -17], range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+PASS Point 83 [doctype, 0], range 60 detached 
+PASS Point 84 [doctype, -17], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] 
+PASS Point 84 [doctype, -17], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] 
+PASS Point 84 [doctype, -17], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] 
+PASS Point 84 [doctype, -17], range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] 
+PASS Point 84 [doctype, -17], range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] 
+PASS Point 84 [doctype, -17], range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9] 
+FAIL Point 84 [doctype, -17], range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] InvalidNodeTypeError: DOM Exception 24
+FAIL Point 84 [doctype, -17], range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS Point 84 [doctype, -17], range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] 
</span><span class="cx"> PASS Point 84 [doctype, -17], range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] 
</span><del>-FAIL Point 84 [doctype, -17], range 10 [document.documentElement, 0, document.documentElement, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 11 [document.documentElement, 0, document.documentElement, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 12 [document.documentElement, 1, document.documentElement, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 13 [document.head, 1, document.head, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 14 [document.body, 4, document.body, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS Point 84 [doctype, -17], range 10 [document.documentElement, 0, document.documentElement, 1] 
+PASS Point 84 [doctype, -17], range 11 [document.documentElement, 0, document.documentElement, 2] 
+PASS Point 84 [doctype, -17], range 12 [document.documentElement, 1, document.documentElement, 2] 
+PASS Point 84 [doctype, -17], range 13 [document.head, 1, document.head, 1] 
+PASS Point 84 [doctype, -17], range 14 [document.body, 4, document.body, 5] 
</ins><span class="cx"> PASS Point 84 [doctype, -17], range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] 
</span><del>-FAIL Point 84 [doctype, -17], range 16 [paras[0], 0, paras[0], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 17 [detachedPara1, 0, detachedPara1, 1] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL Point 84 [doctype, -17], range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 20 [paras[0].firstChild, 3, paras[3], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 21 [paras[0], 0, paras[0].firstChild, 7] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 22 [testDiv, 2, paras[4], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 23 [document, 0, document, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 24 [document, 0, document, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 25 [comment, 2, comment, 3] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 26 [testDiv, 0, comment, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS Point 84 [doctype, -17], range 16 [paras[0], 0, paras[0], 1] 
+FAIL Point 84 [doctype, -17], range 17 [detachedPara1, 0, detachedPara1, 1] InvalidNodeTypeError: DOM Exception 24
+PASS Point 84 [doctype, -17], range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0] 
+PASS Point 84 [doctype, -17], range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8] 
+PASS Point 84 [doctype, -17], range 20 [paras[0].firstChild, 3, paras[3], 1] 
+PASS Point 84 [doctype, -17], range 21 [paras[0], 0, paras[0].firstChild, 7] 
+PASS Point 84 [doctype, -17], range 22 [testDiv, 2, paras[4], 1] 
+PASS Point 84 [doctype, -17], range 23 [document, 0, document, 1] 
+PASS Point 84 [doctype, -17], range 24 [document, 0, document, 2] 
+PASS Point 84 [doctype, -17], range 25 [comment, 2, comment, 3] 
+PASS Point 84 [doctype, -17], range 26 [testDiv, 0, comment, 5] 
</ins><span class="cx"> PASS Point 84 [doctype, -17], range 27 [foreignDoc, 1, foreignComment, 2] 
</span><span class="cx"> PASS Point 84 [doctype, -17], range 28 [foreignDoc.body, 0, foreignTextNode, 36] 
</span><span class="cx"> PASS Point 84 [doctype, -17], range 29 [xmlDoc, 1, xmlComment, 0] 
</span><del>-FAIL Point 84 [doctype, -17], range 30 [detachedTextNode, 0, detachedTextNode, 8] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL Point 84 [doctype, -17], range 30 [detachedTextNode, 0, detachedTextNode, 8] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS Point 84 [doctype, -17], range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] 
</span><span class="cx"> PASS Point 84 [doctype, -17], range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] 
</span><del>-FAIL Point 84 [doctype, -17], range 33 [detachedComment, 3, detachedComment, 4] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL Point 84 [doctype, -17], range 33 [detachedComment, 3, detachedComment, 4] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS Point 84 [doctype, -17], range 34 [detachedForeignComment, 0, detachedForeignComment, 1] 
</span><span class="cx"> PASS Point 84 [doctype, -17], range 35 [detachedXmlComment, 2, detachedXmlComment, 6] 
</span><del>-FAIL Point 84 [doctype, -17], range 36 [docfrag, 0, docfrag, 0] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL Point 84 [doctype, -17], range 36 [docfrag, 0, docfrag, 0] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS Point 84 [doctype, -17], range 37 [processingInstruction, 0, processingInstruction, 4] 
</span><del>-FAIL Point 84 [doctype, -17], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+PASS Point 84 [doctype, -17], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] 
+PASS Point 84 [doctype, -17], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] 
+FAIL Point 84 [doctype, -17], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS Point 84 [doctype, -17], range 41 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] 
</span><span class="cx"> PASS Point 84 [doctype, -17], range 42 [foreignDoc.head, 1, foreignDoc.head, 1] 
</span><span class="cx"> PASS Point 84 [doctype, -17], range 43 [foreignDoc.body, 0, foreignDoc.body, 0] 
</span><del>-FAIL Point 84 [doctype, -17], range 44 [paras[0], 0, paras[0], 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 45 [detachedPara1, 0, detachedPara1, 0] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL Point 84 [doctype, -17], range 46 [testDiv, 1, paras[2].firstChild, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 47 [document.documentElement, 1, document.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS Point 84 [doctype, -17], range 44 [paras[0], 0, paras[0], 0] 
+FAIL Point 84 [doctype, -17], range 45 [detachedPara1, 0, detachedPara1, 0] InvalidNodeTypeError: DOM Exception 24
+PASS Point 84 [doctype, -17], range 46 [testDiv, 1, paras[2].firstChild, 5] 
+PASS Point 84 [doctype, -17], range 47 [document.documentElement, 1, document.body, 0] 
</ins><span class="cx"> PASS Point 84 [doctype, -17], range 48 [foreignDoc.documentElement, 1, foreignDoc.body, 0] 
</span><del>-FAIL Point 84 [doctype, -17], range 49 [document, 1, document, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 50 [paras[2].firstChild, 4, comment, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 51 [paras[3], 1, comment, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS Point 84 [doctype, -17], range 49 [document, 1, document, 2] 
+PASS Point 84 [doctype, -17], range 50 [paras[2].firstChild, 4, comment, 2] 
+PASS Point 84 [doctype, -17], range 51 [paras[3], 1, comment, 8] 
</ins><span class="cx"> PASS Point 84 [doctype, -17], range 52 [foreignDoc, 0, foreignDoc, 0] 
</span><span class="cx"> PASS Point 84 [doctype, -17], range 53 [xmlDoc, 0, xmlDoc, 0] 
</span><span class="cx"> PASS Point 84 [doctype, -17], range 54 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] 
</span><span class="cx"> PASS Point 84 [doctype, -17], range 55 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] 
</span><del>-FAIL Point 84 [doctype, -17], range 56 [detachedComment, 5, detachedComment, 5] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL Point 84 [doctype, -17], range 56 [detachedComment, 5, detachedComment, 5] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS Point 84 [doctype, -17], range 57 [detachedForeignComment, 4, detachedForeignComment, 4] 
</span><span class="cx"> PASS Point 84 [doctype, -17], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] 
</span><span class="cx"> PASS Point 84 [doctype, -17], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] 
</span><del>-FAIL Point 84 [doctype, -17], range 60 detached assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL Point 85 [doctype, 1], range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+PASS Point 84 [doctype, -17], range 60 detached 
+PASS Point 85 [doctype, 1], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] 
+PASS Point 85 [doctype, 1], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] 
+PASS Point 85 [doctype, 1], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] 
+PASS Point 85 [doctype, 1], range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] 
+PASS Point 85 [doctype, 1], range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] 
+PASS Point 85 [doctype, 1], range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9] 
+FAIL Point 85 [doctype, 1], range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] InvalidNodeTypeError: DOM Exception 24
+FAIL Point 85 [doctype, 1], range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS Point 85 [doctype, 1], range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] 
</span><span class="cx"> PASS Point 85 [doctype, 1], range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] 
</span><del>-FAIL Point 85 [doctype, 1], range 10 [document.documentElement, 0, document.documentElement, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 11 [document.documentElement, 0, document.documentElement, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 12 [document.documentElement, 1, document.documentElement, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 13 [document.head, 1, document.head, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 14 [document.body, 4, document.body, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS Point 85 [doctype, 1], range 10 [document.documentElement, 0, document.documentElement, 1] 
+PASS Point 85 [doctype, 1], range 11 [document.documentElement, 0, document.documentElement, 2] 
+PASS Point 85 [doctype, 1], range 12 [document.documentElement, 1, document.documentElement, 2] 
+PASS Point 85 [doctype, 1], range 13 [document.head, 1, document.head, 1] 
+PASS Point 85 [doctype, 1], range 14 [document.body, 4, document.body, 5] 
</ins><span class="cx"> PASS Point 85 [doctype, 1], range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] 
</span><del>-FAIL Point 85 [doctype, 1], range 16 [paras[0], 0, paras[0], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 17 [detachedPara1, 0, detachedPara1, 1] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL Point 85 [doctype, 1], range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 20 [paras[0].firstChild, 3, paras[3], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 21 [paras[0], 0, paras[0].firstChild, 7] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 22 [testDiv, 2, paras[4], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 23 [document, 0, document, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 24 [document, 0, document, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 25 [comment, 2, comment, 3] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 26 [testDiv, 0, comment, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS Point 85 [doctype, 1], range 16 [paras[0], 0, paras[0], 1] 
+FAIL Point 85 [doctype, 1], range 17 [detachedPara1, 0, detachedPara1, 1] InvalidNodeTypeError: DOM Exception 24
+PASS Point 85 [doctype, 1], range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0] 
+PASS Point 85 [doctype, 1], range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8] 
+PASS Point 85 [doctype, 1], range 20 [paras[0].firstChild, 3, paras[3], 1] 
+PASS Point 85 [doctype, 1], range 21 [paras[0], 0, paras[0].firstChild, 7] 
+PASS Point 85 [doctype, 1], range 22 [testDiv, 2, paras[4], 1] 
+PASS Point 85 [doctype, 1], range 23 [document, 0, document, 1] 
+PASS Point 85 [doctype, 1], range 24 [document, 0, document, 2] 
+PASS Point 85 [doctype, 1], range 25 [comment, 2, comment, 3] 
+PASS Point 85 [doctype, 1], range 26 [testDiv, 0, comment, 5] 
</ins><span class="cx"> PASS Point 85 [doctype, 1], range 27 [foreignDoc, 1, foreignComment, 2] 
</span><span class="cx"> PASS Point 85 [doctype, 1], range 28 [foreignDoc.body, 0, foreignTextNode, 36] 
</span><span class="cx"> PASS Point 85 [doctype, 1], range 29 [xmlDoc, 1, xmlComment, 0] 
</span><del>-FAIL Point 85 [doctype, 1], range 30 [detachedTextNode, 0, detachedTextNode, 8] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL Point 85 [doctype, 1], range 30 [detachedTextNode, 0, detachedTextNode, 8] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS Point 85 [doctype, 1], range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] 
</span><span class="cx"> PASS Point 85 [doctype, 1], range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] 
</span><del>-FAIL Point 85 [doctype, 1], range 33 [detachedComment, 3, detachedComment, 4] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL Point 85 [doctype, 1], range 33 [detachedComment, 3, detachedComment, 4] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS Point 85 [doctype, 1], range 34 [detachedForeignComment, 0, detachedForeignComment, 1] 
</span><span class="cx"> PASS Point 85 [doctype, 1], range 35 [detachedXmlComment, 2, detachedXmlComment, 6] 
</span><del>-FAIL Point 85 [doctype, 1], range 36 [docfrag, 0, docfrag, 0] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL Point 85 [doctype, 1], range 36 [docfrag, 0, docfrag, 0] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS Point 85 [doctype, 1], range 37 [processingInstruction, 0, processingInstruction, 4] 
</span><del>-FAIL Point 85 [doctype, 1], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+PASS Point 85 [doctype, 1], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] 
+PASS Point 85 [doctype, 1], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] 
+FAIL Point 85 [doctype, 1], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS Point 85 [doctype, 1], range 41 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] 
</span><span class="cx"> PASS Point 85 [doctype, 1], range 42 [foreignDoc.head, 1, foreignDoc.head, 1] 
</span><span class="cx"> PASS Point 85 [doctype, 1], range 43 [foreignDoc.body, 0, foreignDoc.body, 0] 
</span><del>-FAIL Point 85 [doctype, 1], range 44 [paras[0], 0, paras[0], 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 45 [detachedPara1, 0, detachedPara1, 0] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL Point 85 [doctype, 1], range 46 [testDiv, 1, paras[2].firstChild, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 47 [document.documentElement, 1, document.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS Point 85 [doctype, 1], range 44 [paras[0], 0, paras[0], 0] 
+FAIL Point 85 [doctype, 1], range 45 [detachedPara1, 0, detachedPara1, 0] InvalidNodeTypeError: DOM Exception 24
+PASS Point 85 [doctype, 1], range 46 [testDiv, 1, paras[2].firstChild, 5] 
+PASS Point 85 [doctype, 1], range 47 [document.documentElement, 1, document.body, 0] 
</ins><span class="cx"> PASS Point 85 [doctype, 1], range 48 [foreignDoc.documentElement, 1, foreignDoc.body, 0] 
</span><del>-FAIL Point 85 [doctype, 1], range 49 [document, 1, document, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 50 [paras[2].firstChild, 4, comment, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 51 [paras[3], 1, comment, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS Point 85 [doctype, 1], range 49 [document, 1, document, 2] 
+PASS Point 85 [doctype, 1], range 50 [paras[2].firstChild, 4, comment, 2] 
+PASS Point 85 [doctype, 1], range 51 [paras[3], 1, comment, 8] 
</ins><span class="cx"> PASS Point 85 [doctype, 1], range 52 [foreignDoc, 0, foreignDoc, 0] 
</span><span class="cx"> PASS Point 85 [doctype, 1], range 53 [xmlDoc, 0, xmlDoc, 0] 
</span><span class="cx"> PASS Point 85 [doctype, 1], range 54 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] 
</span><span class="cx"> PASS Point 85 [doctype, 1], range 55 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] 
</span><del>-FAIL Point 85 [doctype, 1], range 56 [detachedComment, 5, detachedComment, 5] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL Point 85 [doctype, 1], range 56 [detachedComment, 5, detachedComment, 5] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS Point 85 [doctype, 1], range 57 [detachedForeignComment, 4, detachedForeignComment, 4] 
</span><span class="cx"> PASS Point 85 [doctype, 1], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] 
</span><span class="cx"> PASS Point 85 [doctype, 1], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] 
</span><del>-FAIL Point 85 [doctype, 1], range 60 detached assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS Point 85 [doctype, 1], range 60 detached 
</ins><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] 
</span><span class="lines">@@ -5409,17 +5319,14 @@
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] 
</span><del>-FAIL Point 86 [foreignDoctype, 0], range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 86 [foreignDoctype, 0], range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS Point 86 [foreignDoctype, 0], range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] 
+PASS Point 86 [foreignDoctype, 0], range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] 
</ins><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 10 [document.documentElement, 0, document.documentElement, 1] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 11 [document.documentElement, 0, document.documentElement, 2] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 12 [document.documentElement, 1, document.documentElement, 2] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 13 [document.head, 1, document.head, 1] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 14 [document.body, 4, document.body, 5] 
</span><del>-FAIL Point 86 [foreignDoctype, 0], range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS Point 86 [foreignDoctype, 0], range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] 
</ins><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 16 [paras[0], 0, paras[0], 1] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 17 [detachedPara1, 0, detachedPara1, 1] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0] 
</span><span class="lines">@@ -5431,45 +5338,38 @@
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 24 [document, 0, document, 2] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 25 [comment, 2, comment, 3] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 26 [testDiv, 0, comment, 5] 
</span><del>-FAIL Point 86 [foreignDoctype, 0], range 27 [foreignDoc, 1, foreignComment, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 86 [foreignDoctype, 0], range 28 [foreignDoc.body, 0, foreignTextNode, 36] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS Point 86 [foreignDoctype, 0], range 27 [foreignDoc, 1, foreignComment, 2] 
+PASS Point 86 [foreignDoctype, 0], range 28 [foreignDoc.body, 0, foreignTextNode, 36] 
</ins><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 29 [xmlDoc, 1, xmlComment, 0] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 30 [detachedTextNode, 0, detachedTextNode, 8] 
</span><del>-FAIL Point 86 [foreignDoctype, 0], range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL Point 86 [foreignDoctype, 0], range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 33 [detachedComment, 3, detachedComment, 4] 
</span><del>-FAIL Point 86 [foreignDoctype, 0], range 34 [detachedForeignComment, 0, detachedForeignComment, 1] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL Point 86 [foreignDoctype, 0], range 34 [detachedForeignComment, 0, detachedForeignComment, 1] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 35 [detachedXmlComment, 2, detachedXmlComment, 6] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 36 [docfrag, 0, docfrag, 0] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 37 [processingInstruction, 0, processingInstruction, 4] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] 
</span><del>-FAIL Point 86 [foreignDoctype, 0], range 41 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 86 [foreignDoctype, 0], range 42 [foreignDoc.head, 1, foreignDoc.head, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL Point 86 [foreignDoctype, 0], range 43 [foreignDoc.body, 0, foreignDoc.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS Point 86 [foreignDoctype, 0], range 41 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] 
+PASS Point 86 [foreignDoctype, 0], range 42 [foreignDoc.head, 1, foreignDoc.head, 1] 
+PASS Point 86 [foreignDoctype, 0], range 43 [foreignDoc.body, 0, foreignDoc.body, 0] 
</ins><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 44 [paras[0], 0, paras[0], 0] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 45 [detachedPara1, 0, detachedPara1, 0] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 46 [testDiv, 1, paras[2].firstChild, 5] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 47 [document.documentElement, 1, document.body, 0] 
</span><del>-FAIL Point 86 [foreignDoctype, 0], range 48 [foreignDoc.documentElement, 1, foreignDoc.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS Point 86 [foreignDoctype, 0], range 48 [foreignDoc.documentElement, 1, foreignDoc.body, 0] 
</ins><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 49 [document, 1, document, 2] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 50 [paras[2].firstChild, 4, comment, 2] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 51 [paras[3], 1, comment, 8] 
</span><del>-FAIL Point 86 [foreignDoctype, 0], range 52 [foreignDoc, 0, foreignDoc, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS Point 86 [foreignDoctype, 0], range 52 [foreignDoc, 0, foreignDoc, 0] 
</ins><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 53 [xmlDoc, 0, xmlDoc, 0] 
</span><del>-FAIL Point 86 [foreignDoctype, 0], range 54 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL Point 86 [foreignDoctype, 0], range 54 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 55 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 56 [detachedComment, 5, detachedComment, 5] 
</span><del>-FAIL Point 86 [foreignDoctype, 0], range 57 [detachedForeignComment, 4, detachedForeignComment, 4] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL Point 86 [foreignDoctype, 0], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL Point 86 [foreignDoctype, 0], range 57 [detachedForeignComment, 4, detachedForeignComment, 4] InvalidNodeTypeError: DOM Exception 24
+FAIL Point 86 [foreignDoctype, 0], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] 
</span><span class="cx"> PASS Point 86 [foreignDoctype, 0], range 60 detached 
</span><span class="cx"> PASS Point 87 [xmlDoctype, 0], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] 
</span><span class="lines">@@ -5501,17 +5401,15 @@
</span><span class="cx"> PASS Point 87 [xmlDoctype, 0], range 26 [testDiv, 0, comment, 5] 
</span><span class="cx"> PASS Point 87 [xmlDoctype, 0], range 27 [foreignDoc, 1, foreignComment, 2] 
</span><span class="cx"> PASS Point 87 [xmlDoctype, 0], range 28 [foreignDoc.body, 0, foreignTextNode, 36] 
</span><del>-FAIL Point 87 [xmlDoctype, 0], range 29 [xmlDoc, 1, xmlComment, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS Point 87 [xmlDoctype, 0], range 29 [xmlDoc, 1, xmlComment, 0] 
</ins><span class="cx"> PASS Point 87 [xmlDoctype, 0], range 30 [detachedTextNode, 0, detachedTextNode, 8] 
</span><span class="cx"> PASS Point 87 [xmlDoctype, 0], range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] 
</span><del>-FAIL Point 87 [xmlDoctype, 0], range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL Point 87 [xmlDoctype, 0], range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS Point 87 [xmlDoctype, 0], range 33 [detachedComment, 3, detachedComment, 4] 
</span><span class="cx"> PASS Point 87 [xmlDoctype, 0], range 34 [detachedForeignComment, 0, detachedForeignComment, 1] 
</span><del>-FAIL Point 87 [xmlDoctype, 0], range 35 [detachedXmlComment, 2, detachedXmlComment, 6] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL Point 87 [xmlDoctype, 0], range 35 [detachedXmlComment, 2, detachedXmlComment, 6] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS Point 87 [xmlDoctype, 0], range 36 [docfrag, 0, docfrag, 0] 
</span><del>-FAIL Point 87 [xmlDoctype, 0], range 37 [processingInstruction, 0, processingInstruction, 4] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS Point 87 [xmlDoctype, 0], range 37 [processingInstruction, 0, processingInstruction, 4] 
</ins><span class="cx"> PASS Point 87 [xmlDoctype, 0], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] 
</span><span class="cx"> PASS Point 87 [xmlDoctype, 0], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] 
</span><span class="cx"> PASS Point 87 [xmlDoctype, 0], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] 
</span><span class="lines">@@ -5527,13 +5425,12 @@
</span><span class="cx"> PASS Point 87 [xmlDoctype, 0], range 50 [paras[2].firstChild, 4, comment, 2] 
</span><span class="cx"> PASS Point 87 [xmlDoctype, 0], range 51 [paras[3], 1, comment, 8] 
</span><span class="cx"> PASS Point 87 [xmlDoctype, 0], range 52 [foreignDoc, 0, foreignDoc, 0] 
</span><del>-FAIL Point 87 [xmlDoctype, 0], range 53 [xmlDoc, 0, xmlDoc, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function &quot;function () {
-          range.isPointInRange(node, offset...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS Point 87 [xmlDoctype, 0], range 53 [xmlDoc, 0, xmlDoc, 0] 
</ins><span class="cx"> PASS Point 87 [xmlDoctype, 0], range 54 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] 
</span><del>-FAIL Point 87 [xmlDoctype, 0], range 55 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL Point 87 [xmlDoctype, 0], range 55 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS Point 87 [xmlDoctype, 0], range 56 [detachedComment, 5, detachedComment, 5] 
</span><span class="cx"> PASS Point 87 [xmlDoctype, 0], range 57 [detachedForeignComment, 4, detachedForeignComment, 4] 
</span><span class="cx"> PASS Point 87 [xmlDoctype, 0], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] 
</span><del>-FAIL Point 87 [xmlDoctype, 0], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL Point 87 [xmlDoctype, 0], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS Point 87 [xmlDoctype, 0], range 60 detached 
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3cdomrangesRangeselectNodeexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/w3c/dom/ranges/Range-selectNode-expected.txt (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/dom/ranges/Range-selectNode-expected.txt        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/http/tests/w3c/dom/ranges/Range-selectNode-expected.txt        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -1,24 +1,12 @@
</span><span class="cx"> 
</span><del>-FAIL  current doc: #document node, current doc's range, type 9 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL  current doc: #document node, foreign doc's range, type 9 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL  current doc: #document node, XML doc's range, type 9 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL  current doc: #document node, detached range, type 9 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL ** current doc: html node, current doc's range, type 10 assert_throws: selectNodeContents() on a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNodeContents(node);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL ** current doc: html node, foreign doc's range, type 10 assert_throws: selectNodeContents() on a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNodeContents(node);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL ** current doc: html node, XML doc's range, type 10 assert_throws: selectNodeContents() on a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNodeContents(node);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL ** current doc: html node, detached range, type 10 assert_throws: selectNodeContents() on a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNodeContents(node);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS  current doc: #document node, current doc's range, type 9 
+PASS  current doc: #document node, foreign doc's range, type 9 
+PASS  current doc: #document node, XML doc's range, type 9 
+PASS  current doc: #document node, detached range, type 9 
+PASS ** current doc: html node, current doc's range, type 10 
+PASS ** current doc: html node, foreign doc's range, type 10 
+PASS ** current doc: html node, XML doc's range, type 10 
+PASS ** current doc: html node, detached range, type 10 
</ins><span class="cx"> PASS ** current doc: html node, current doc's range, type 1 
</span><span class="cx"> PASS ** current doc: html node, foreign doc's range, type 1 
</span><span class="cx"> PASS ** current doc: html node, XML doc's range, type 1 
</span><span class="lines">@@ -143,26 +131,14 @@
</span><span class="cx"> PASS ******** current doc: #text node, foreign doc's range, type 3 
</span><span class="cx"> PASS ******** current doc: #text node, XML doc's range, type 3 
</span><span class="cx"> PASS ******** current doc: #text node, detached range, type 3 
</span><del>-FAIL  foreign doc: #document node, current doc's range, type 9 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL  foreign doc: #document node, foreign doc's range, type 9 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL  foreign doc: #document node, XML doc's range, type 9 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL  foreign doc: #document node, detached range, type 9 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL ** foreign doc: html node, current doc's range, type 10 assert_throws: selectNodeContents() on a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNodeContents(node);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL ** foreign doc: html node, foreign doc's range, type 10 assert_throws: selectNodeContents() on a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNodeContents(node);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL ** foreign doc: html node, XML doc's range, type 10 assert_throws: selectNodeContents() on a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNodeContents(node);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL ** foreign doc: html node, detached range, type 10 assert_throws: selectNodeContents() on a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNodeContents(node);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS  foreign doc: #document node, current doc's range, type 9 
+PASS  foreign doc: #document node, foreign doc's range, type 9 
+PASS  foreign doc: #document node, XML doc's range, type 9 
+PASS  foreign doc: #document node, detached range, type 9 
+PASS ** foreign doc: html node, current doc's range, type 10 
+PASS ** foreign doc: html node, foreign doc's range, type 10 
+PASS ** foreign doc: html node, XML doc's range, type 10 
+PASS ** foreign doc: html node, detached range, type 10 
</ins><span class="cx"> PASS ** foreign doc: html node, current doc's range, type 1 
</span><span class="cx"> PASS ** foreign doc: html node, foreign doc's range, type 1 
</span><span class="cx"> PASS ** foreign doc: html node, XML doc's range, type 1 
</span><span class="lines">@@ -203,54 +179,34 @@
</span><span class="cx"> PASS ** foreign doc: #comment node, foreign doc's range, type 8 
</span><span class="cx"> PASS ** foreign doc: #comment node, XML doc's range, type 8 
</span><span class="cx"> PASS ** foreign doc: #comment node, detached range, type 8 
</span><del>-FAIL  detached div in current doc: div node, current doc's range, type 1 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL  detached div in current doc: div node, foreign doc's range, type 1 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL  detached div in current doc: div node, XML doc's range, type 1 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL  detached div in current doc: div node, detached range, type 1 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL ** detached div in current doc: p node, current doc's range, type 1 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL ** detached div in current doc: p node, foreign doc's range, type 1 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL ** detached div in current doc: p node, XML doc's range, type 1 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL ** detached div in current doc: p node, detached range, type 1 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL **** detached div in current doc: #text node, current doc's range, type 3 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL **** detached div in current doc: #text node, foreign doc's range, type 3 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL **** detached div in current doc: #text node, XML doc's range, type 3 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL **** detached div in current doc: #text node, detached range, type 3 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL ** detached div in current doc: p node, current doc's range, type 1 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL ** detached div in current doc: p node, foreign doc's range, type 1 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL ** detached div in current doc: p node, XML doc's range, type 1 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL ** detached div in current doc: p node, detached range, type 1 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL **** detached div in current doc: #text node, current doc's range, type 3 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL **** detached div in current doc: #text node, foreign doc's range, type 3 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL **** detached div in current doc: #text node, XML doc's range, type 3 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL **** detached div in current doc: #text node, detached range, type 3 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL  #document node, current doc's range, type 9 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL  #document node, foreign doc's range, type 9 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL  #document node, XML doc's range, type 9 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL  #document node, detached range, type 9 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL ** qorflesnorf node, current doc's range, type 10 assert_throws: selectNodeContents() on a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNodeContents(node);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL ** qorflesnorf node, foreign doc's range, type 10 assert_throws: selectNodeContents() on a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNodeContents(node);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL ** qorflesnorf node, XML doc's range, type 10 assert_throws: selectNodeContents() on a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNodeContents(node);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL ** qorflesnorf node, detached range, type 10 assert_throws: selectNodeContents() on a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNodeContents(node);...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS  detached div in current doc: div node, current doc's range, type 1 
+PASS  detached div in current doc: div node, foreign doc's range, type 1 
+PASS  detached div in current doc: div node, XML doc's range, type 1 
+PASS  detached div in current doc: div node, detached range, type 1 
+FAIL ** detached div in current doc: p node, current doc's range, type 1 InvalidNodeTypeError: DOM Exception 24
+FAIL ** detached div in current doc: p node, foreign doc's range, type 1 InvalidNodeTypeError: DOM Exception 24
+FAIL ** detached div in current doc: p node, XML doc's range, type 1 InvalidNodeTypeError: DOM Exception 24
+FAIL ** detached div in current doc: p node, detached range, type 1 InvalidNodeTypeError: DOM Exception 24
+FAIL **** detached div in current doc: #text node, current doc's range, type 3 InvalidNodeTypeError: DOM Exception 24
+FAIL **** detached div in current doc: #text node, foreign doc's range, type 3 InvalidNodeTypeError: DOM Exception 24
+FAIL **** detached div in current doc: #text node, XML doc's range, type 3 InvalidNodeTypeError: DOM Exception 24
+FAIL **** detached div in current doc: #text node, detached range, type 3 InvalidNodeTypeError: DOM Exception 24
+FAIL ** detached div in current doc: p node, current doc's range, type 1 InvalidNodeTypeError: DOM Exception 24
+FAIL ** detached div in current doc: p node, foreign doc's range, type 1 InvalidNodeTypeError: DOM Exception 24
+FAIL ** detached div in current doc: p node, XML doc's range, type 1 InvalidNodeTypeError: DOM Exception 24
+FAIL ** detached div in current doc: p node, detached range, type 1 InvalidNodeTypeError: DOM Exception 24
+FAIL **** detached div in current doc: #text node, current doc's range, type 3 InvalidNodeTypeError: DOM Exception 24
+FAIL **** detached div in current doc: #text node, foreign doc's range, type 3 InvalidNodeTypeError: DOM Exception 24
+FAIL **** detached div in current doc: #text node, XML doc's range, type 3 InvalidNodeTypeError: DOM Exception 24
+FAIL **** detached div in current doc: #text node, detached range, type 3 InvalidNodeTypeError: DOM Exception 24
+PASS  #document node, current doc's range, type 9 
+PASS  #document node, foreign doc's range, type 9 
+PASS  #document node, XML doc's range, type 9 
+PASS  #document node, detached range, type 9 
+PASS ** qorflesnorf node, current doc's range, type 10 
+PASS ** qorflesnorf node, foreign doc's range, type 10 
+PASS ** qorflesnorf node, XML doc's range, type 10 
+PASS ** qorflesnorf node, detached range, type 10 
</ins><span class="cx"> PASS ** igiveuponcreativenames node, current doc's range, type 1 
</span><span class="cx"> PASS ** igiveuponcreativenames node, foreign doc's range, type 1 
</span><span class="cx"> PASS ** igiveuponcreativenames node, XML doc's range, type 1 
</span><span class="lines">@@ -275,18 +231,6 @@
</span><span class="cx"> PASS ** #text node, foreign doc's range, type 3 
</span><span class="cx"> PASS ** #text node, XML doc's range, type 3 
</span><span class="cx"> PASS ** #text node, detached range, type 3 
</span><del>-FAIL  #text node, current doc's range, type 3 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL  #text node, foreign doc's range, type 3 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL  #text node, XML doc's range, type 3 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL  #text node, detached range, type 3 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><span class="cx"> PASS  #text node, current doc's range, type 3 
</span><span class="cx"> PASS  #text node, foreign doc's range, type 3 
</span><span class="cx"> PASS  #text node, XML doc's range, type 3 
</span><span class="lines">@@ -295,6 +239,10 @@
</span><span class="cx"> PASS  #text node, foreign doc's range, type 3 
</span><span class="cx"> PASS  #text node, XML doc's range, type 3 
</span><span class="cx"> PASS  #text node, detached range, type 3 
</span><ins>+PASS  #text node, current doc's range, type 3 
+PASS  #text node, foreign doc's range, type 3 
+PASS  #text node, XML doc's range, type 3 
+PASS  #text node, detached range, type 3 
</ins><span class="cx"> PASS  somepi node, current doc's range, type 7 
</span><span class="cx"> PASS  somepi node, foreign doc's range, type 7 
</span><span class="cx"> PASS  somepi node, XML doc's range, type 7 
</span><span class="lines">@@ -311,40 +259,16 @@
</span><span class="cx"> PASS  #comment node, foreign doc's range, type 8 
</span><span class="cx"> PASS  #comment node, XML doc's range, type 8 
</span><span class="cx"> PASS  #comment node, detached range, type 8 
</span><del>-FAIL  #document-fragment node, current doc's range, type 11 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL  #document-fragment node, foreign doc's range, type 11 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL  #document-fragment node, XML doc's range, type 11 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL  #document-fragment node, detached range, type 11 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL  #document-fragment node, current doc's range, type 11 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL  #document-fragment node, foreign doc's range, type 11 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL  #document-fragment node, XML doc's range, type 11 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL  #document-fragment node, detached range, type 11 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL  #document-fragment node, current doc's range, type 11 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL  #document-fragment node, foreign doc's range, type 11 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL  #document-fragment node, XML doc's range, type 11 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL  #document-fragment node, detached range, type 11 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-            range.selectNode(node);
-        }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS  #document-fragment node, current doc's range, type 11 
+PASS  #document-fragment node, foreign doc's range, type 11 
+PASS  #document-fragment node, XML doc's range, type 11 
+PASS  #document-fragment node, detached range, type 11 
+PASS  #document-fragment node, current doc's range, type 11 
+PASS  #document-fragment node, foreign doc's range, type 11 
+PASS  #document-fragment node, XML doc's range, type 11 
+PASS  #document-fragment node, detached range, type 11 
+PASS  #document-fragment node, current doc's range, type 11 
+PASS  #document-fragment node, foreign doc's range, type 11 
+PASS  #document-fragment node, XML doc's range, type 11 
+PASS  #document-fragment node, detached range, type 11 
</ins><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3cdomrangesRangesetexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/w3c/dom/ranges/Range-set-expected.txt (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/dom/ranges/Range-set-expected.txt        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/http/tests/w3c/dom/ranges/Range-set-expected.txt        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -120,21 +120,11 @@
</span><span class="cx"> PASS setStart() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 83 [doctype, 0] 
+PASS setStart() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 84 [doctype, -17] 
+PASS setStart() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 85 [doctype, 1] 
+PASS setStart() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -218,21 +208,11 @@
</span><span class="cx"> PASS setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 83 [doctype, 0] 
+PASS setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 84 [doctype, -17] 
+PASS setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 85 [doctype, 1] 
+PASS setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -316,21 +296,11 @@
</span><span class="cx"> PASS setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 83 [doctype, 0] 
+PASS setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 84 [doctype, -17] 
+PASS setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 85 [doctype, 1] 
+PASS setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -414,21 +384,11 @@
</span><span class="cx"> PASS setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 83 [doctype, 0] 
+PASS setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 84 [doctype, -17] 
+PASS setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 85 [doctype, 1] 
+PASS setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -512,21 +472,11 @@
</span><span class="cx"> PASS setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 83 [doctype, 0] 
+PASS setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 84 [doctype, -17] 
+PASS setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 85 [doctype, 1] 
+PASS setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -610,21 +560,11 @@
</span><span class="cx"> PASS setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 83 [doctype, 0] 
+PASS setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 84 [doctype, -17] 
+PASS setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 85 [doctype, 1] 
+PASS setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -708,21 +648,11 @@
</span><span class="cx"> PASS setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 83 [doctype, 0] 
+PASS setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 84 [doctype, -17] 
+PASS setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 85 [doctype, 1] 
+PASS setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -806,21 +736,11 @@
</span><span class="cx"> PASS setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 83 [doctype, 0] 
+PASS setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 84 [doctype, -17] 
+PASS setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 85 [doctype, 1] 
+PASS setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -904,21 +824,11 @@
</span><span class="cx"> PASS setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 83 [doctype, 0] 
+PASS setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 84 [doctype, -17] 
+PASS setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 85 [doctype, 1] 
+PASS setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -1002,21 +912,11 @@
</span><span class="cx"> PASS setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 83 [doctype, 0] 
+PASS setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 84 [doctype, -17] 
+PASS setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 85 [doctype, 1] 
+PASS setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -1100,21 +1000,11 @@
</span><span class="cx"> PASS setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 83 [doctype, 0] 
+PASS setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 84 [doctype, -17] 
+PASS setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 85 [doctype, 1] 
+PASS setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -1198,21 +1088,11 @@
</span><span class="cx"> PASS setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 83 [doctype, 0] 
+PASS setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 84 [doctype, -17] 
+PASS setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 85 [doctype, 1] 
+PASS setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -1296,21 +1176,11 @@
</span><span class="cx"> PASS setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 83 [doctype, 0] 
+PASS setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 84 [doctype, -17] 
+PASS setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 85 [doctype, 1] 
+PASS setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 13 [document.head, 1, document.head, 1], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 13 [document.head, 1, document.head, 1], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 13 [document.head, 1, document.head, 1], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -1394,21 +1264,11 @@
</span><span class="cx"> PASS setStart() with range 13 [document.head, 1, document.head, 1], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 13 [document.head, 1, document.head, 1], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 13 [document.head, 1, document.head, 1], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 13 [document.head, 1, document.head, 1], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 13 [document.head, 1, document.head, 1], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 13 [document.head, 1, document.head, 1], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 13 [document.head, 1, document.head, 1], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 13 [document.head, 1, document.head, 1], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 13 [document.head, 1, document.head, 1], point 83 [doctype, 0] 
+PASS setStart() with range 13 [document.head, 1, document.head, 1], point 84 [doctype, -17] 
+PASS setStart() with range 13 [document.head, 1, document.head, 1], point 85 [doctype, 1] 
+PASS setStart() with range 13 [document.head, 1, document.head, 1], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 13 [document.head, 1, document.head, 1], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 14 [document.body, 4, document.body, 5], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 14 [document.body, 4, document.body, 5], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 14 [document.body, 4, document.body, 5], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -1492,21 +1352,11 @@
</span><span class="cx"> PASS setStart() with range 14 [document.body, 4, document.body, 5], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 14 [document.body, 4, document.body, 5], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 14 [document.body, 4, document.body, 5], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 14 [document.body, 4, document.body, 5], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 14 [document.body, 4, document.body, 5], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 14 [document.body, 4, document.body, 5], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 14 [document.body, 4, document.body, 5], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 14 [document.body, 4, document.body, 5], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 14 [document.body, 4, document.body, 5], point 83 [doctype, 0] 
+PASS setStart() with range 14 [document.body, 4, document.body, 5], point 84 [doctype, -17] 
+PASS setStart() with range 14 [document.body, 4, document.body, 5], point 85 [doctype, 1] 
+PASS setStart() with range 14 [document.body, 4, document.body, 5], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 14 [document.body, 4, document.body, 5], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -1590,21 +1440,11 @@
</span><span class="cx"> PASS setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 83 [doctype, 0] 
+PASS setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 84 [doctype, -17] 
+PASS setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 85 [doctype, 1] 
+PASS setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 16 [paras[0], 0, paras[0], 1], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 16 [paras[0], 0, paras[0], 1], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 16 [paras[0], 0, paras[0], 1], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -1688,21 +1528,11 @@
</span><span class="cx"> PASS setStart() with range 16 [paras[0], 0, paras[0], 1], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 16 [paras[0], 0, paras[0], 1], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 16 [paras[0], 0, paras[0], 1], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 16 [paras[0], 0, paras[0], 1], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 16 [paras[0], 0, paras[0], 1], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 16 [paras[0], 0, paras[0], 1], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 16 [paras[0], 0, paras[0], 1], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 16 [paras[0], 0, paras[0], 1], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 16 [paras[0], 0, paras[0], 1], point 83 [doctype, 0] 
+PASS setStart() with range 16 [paras[0], 0, paras[0], 1], point 84 [doctype, -17] 
+PASS setStart() with range 16 [paras[0], 0, paras[0], 1], point 85 [doctype, 1] 
+PASS setStart() with range 16 [paras[0], 0, paras[0], 1], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 16 [paras[0], 0, paras[0], 1], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -1786,21 +1616,11 @@
</span><span class="cx"> PASS setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 83 [doctype, 0] 
+PASS setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 84 [doctype, -17] 
+PASS setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 85 [doctype, 1] 
+PASS setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -1884,21 +1704,11 @@
</span><span class="cx"> PASS setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 83 [doctype, 0] 
+PASS setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 84 [doctype, -17] 
+PASS setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 85 [doctype, 1] 
+PASS setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -1982,21 +1792,11 @@
</span><span class="cx"> PASS setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 83 [doctype, 0] 
+PASS setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 84 [doctype, -17] 
+PASS setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 85 [doctype, 1] 
+PASS setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -2080,21 +1880,11 @@
</span><span class="cx"> PASS setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 83 [doctype, 0] 
+PASS setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 84 [doctype, -17] 
+PASS setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 85 [doctype, 1] 
+PASS setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -2178,21 +1968,11 @@
</span><span class="cx"> PASS setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 83 [doctype, 0] 
+PASS setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 84 [doctype, -17] 
+PASS setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 85 [doctype, 1] 
+PASS setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 22 [testDiv, 2, paras[4], 1], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 22 [testDiv, 2, paras[4], 1], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 22 [testDiv, 2, paras[4], 1], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -2276,21 +2056,11 @@
</span><span class="cx"> PASS setStart() with range 22 [testDiv, 2, paras[4], 1], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 22 [testDiv, 2, paras[4], 1], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 22 [testDiv, 2, paras[4], 1], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 22 [testDiv, 2, paras[4], 1], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 22 [testDiv, 2, paras[4], 1], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 22 [testDiv, 2, paras[4], 1], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 22 [testDiv, 2, paras[4], 1], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 22 [testDiv, 2, paras[4], 1], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 22 [testDiv, 2, paras[4], 1], point 83 [doctype, 0] 
+PASS setStart() with range 22 [testDiv, 2, paras[4], 1], point 84 [doctype, -17] 
+PASS setStart() with range 22 [testDiv, 2, paras[4], 1], point 85 [doctype, 1] 
+PASS setStart() with range 22 [testDiv, 2, paras[4], 1], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 22 [testDiv, 2, paras[4], 1], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 23 [document, 0, document, 1], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 23 [document, 0, document, 1], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 23 [document, 0, document, 1], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -2374,21 +2144,11 @@
</span><span class="cx"> PASS setStart() with range 23 [document, 0, document, 1], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 23 [document, 0, document, 1], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 23 [document, 0, document, 1], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 23 [document, 0, document, 1], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 23 [document, 0, document, 1], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 23 [document, 0, document, 1], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 23 [document, 0, document, 1], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 23 [document, 0, document, 1], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 23 [document, 0, document, 1], point 83 [doctype, 0] 
+PASS setStart() with range 23 [document, 0, document, 1], point 84 [doctype, -17] 
+PASS setStart() with range 23 [document, 0, document, 1], point 85 [doctype, 1] 
+PASS setStart() with range 23 [document, 0, document, 1], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 23 [document, 0, document, 1], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 24 [document, 0, document, 2], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 24 [document, 0, document, 2], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 24 [document, 0, document, 2], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -2472,21 +2232,11 @@
</span><span class="cx"> PASS setStart() with range 24 [document, 0, document, 2], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 24 [document, 0, document, 2], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 24 [document, 0, document, 2], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 24 [document, 0, document, 2], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 24 [document, 0, document, 2], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 24 [document, 0, document, 2], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 24 [document, 0, document, 2], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 24 [document, 0, document, 2], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 24 [document, 0, document, 2], point 83 [doctype, 0] 
+PASS setStart() with range 24 [document, 0, document, 2], point 84 [doctype, -17] 
+PASS setStart() with range 24 [document, 0, document, 2], point 85 [doctype, 1] 
+PASS setStart() with range 24 [document, 0, document, 2], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 24 [document, 0, document, 2], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 25 [comment, 2, comment, 3], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 25 [comment, 2, comment, 3], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 25 [comment, 2, comment, 3], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -2570,21 +2320,11 @@
</span><span class="cx"> PASS setStart() with range 25 [comment, 2, comment, 3], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 25 [comment, 2, comment, 3], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 25 [comment, 2, comment, 3], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 25 [comment, 2, comment, 3], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 25 [comment, 2, comment, 3], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 25 [comment, 2, comment, 3], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 25 [comment, 2, comment, 3], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 25 [comment, 2, comment, 3], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 25 [comment, 2, comment, 3], point 83 [doctype, 0] 
+PASS setStart() with range 25 [comment, 2, comment, 3], point 84 [doctype, -17] 
+PASS setStart() with range 25 [comment, 2, comment, 3], point 85 [doctype, 1] 
+PASS setStart() with range 25 [comment, 2, comment, 3], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 25 [comment, 2, comment, 3], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 26 [testDiv, 0, comment, 5], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 26 [testDiv, 0, comment, 5], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 26 [testDiv, 0, comment, 5], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -2668,21 +2408,11 @@
</span><span class="cx"> PASS setStart() with range 26 [testDiv, 0, comment, 5], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 26 [testDiv, 0, comment, 5], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 26 [testDiv, 0, comment, 5], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 26 [testDiv, 0, comment, 5], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 26 [testDiv, 0, comment, 5], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 26 [testDiv, 0, comment, 5], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 26 [testDiv, 0, comment, 5], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 26 [testDiv, 0, comment, 5], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 26 [testDiv, 0, comment, 5], point 83 [doctype, 0] 
+PASS setStart() with range 26 [testDiv, 0, comment, 5], point 84 [doctype, -17] 
+PASS setStart() with range 26 [testDiv, 0, comment, 5], point 85 [doctype, 1] 
+PASS setStart() with range 26 [testDiv, 0, comment, 5], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 26 [testDiv, 0, comment, 5], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -2766,21 +2496,11 @@
</span><span class="cx"> PASS setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 83 [doctype, 0] 
+PASS setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 84 [doctype, -17] 
+PASS setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 85 [doctype, 1] 
+PASS setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -2864,21 +2584,11 @@
</span><span class="cx"> PASS setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 83 [doctype, 0] 
+PASS setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 84 [doctype, -17] 
+PASS setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 85 [doctype, 1] 
+PASS setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -2962,21 +2672,11 @@
</span><span class="cx"> PASS setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 83 [doctype, 0] 
+PASS setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 84 [doctype, -17] 
+PASS setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 85 [doctype, 1] 
+PASS setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -3060,21 +2760,11 @@
</span><span class="cx"> PASS setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 83 [doctype, 0] 
+PASS setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 84 [doctype, -17] 
+PASS setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 85 [doctype, 1] 
+PASS setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -3158,21 +2848,11 @@
</span><span class="cx"> PASS setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 83 [doctype, 0] 
+PASS setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 84 [doctype, -17] 
+PASS setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 85 [doctype, 1] 
+PASS setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -3256,21 +2936,11 @@
</span><span class="cx"> PASS setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 83 [doctype, 0] 
+PASS setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 84 [doctype, -17] 
+PASS setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 85 [doctype, 1] 
+PASS setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -3354,21 +3024,11 @@
</span><span class="cx"> PASS setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 83 [doctype, 0] 
+PASS setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 84 [doctype, -17] 
+PASS setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 85 [doctype, 1] 
+PASS setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -3452,21 +3112,11 @@
</span><span class="cx"> PASS setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 83 [doctype, 0] 
+PASS setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 84 [doctype, -17] 
+PASS setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 85 [doctype, 1] 
+PASS setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -3550,21 +3200,11 @@
</span><span class="cx"> PASS setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 83 [doctype, 0] 
+PASS setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 84 [doctype, -17] 
+PASS setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 85 [doctype, 1] 
+PASS setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 36 [docfrag, 0, docfrag, 0], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 36 [docfrag, 0, docfrag, 0], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 36 [docfrag, 0, docfrag, 0], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -3648,21 +3288,11 @@
</span><span class="cx"> PASS setStart() with range 36 [docfrag, 0, docfrag, 0], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 36 [docfrag, 0, docfrag, 0], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 36 [docfrag, 0, docfrag, 0], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 36 [docfrag, 0, docfrag, 0], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 36 [docfrag, 0, docfrag, 0], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 36 [docfrag, 0, docfrag, 0], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 36 [docfrag, 0, docfrag, 0], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 36 [docfrag, 0, docfrag, 0], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 36 [docfrag, 0, docfrag, 0], point 83 [doctype, 0] 
+PASS setStart() with range 36 [docfrag, 0, docfrag, 0], point 84 [doctype, -17] 
+PASS setStart() with range 36 [docfrag, 0, docfrag, 0], point 85 [doctype, 1] 
+PASS setStart() with range 36 [docfrag, 0, docfrag, 0], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 36 [docfrag, 0, docfrag, 0], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -3746,21 +3376,11 @@
</span><span class="cx"> PASS setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStart(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 83 [doctype, 0] 
+PASS setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 84 [doctype, -17] 
+PASS setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 85 [doctype, 1] 
+PASS setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -3844,21 +3464,11 @@
</span><span class="cx"> PASS setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 83 [doctype, 0] 
+PASS setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 84 [doctype, -17] 
+PASS setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 85 [doctype, 1] 
+PASS setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -3942,21 +3552,11 @@
</span><span class="cx"> PASS setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 83 [doctype, 0] 
+PASS setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 84 [doctype, -17] 
+PASS setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 85 [doctype, 1] 
+PASS setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -4040,21 +3640,11 @@
</span><span class="cx"> PASS setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 83 [doctype, 0] 
+PASS setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 84 [doctype, -17] 
+PASS setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 85 [doctype, 1] 
+PASS setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -4138,21 +3728,11 @@
</span><span class="cx"> PASS setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 83 [doctype, 0] 
+PASS setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 84 [doctype, -17] 
+PASS setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 85 [doctype, 1] 
+PASS setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -4236,21 +3816,11 @@
</span><span class="cx"> PASS setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 83 [doctype, 0] 
+PASS setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 84 [doctype, -17] 
+PASS setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 85 [doctype, 1] 
+PASS setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -4334,21 +3904,11 @@
</span><span class="cx"> PASS setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 83 [doctype, 0] 
+PASS setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 84 [doctype, -17] 
+PASS setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 85 [doctype, 1] 
+PASS setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -4432,21 +3992,11 @@
</span><span class="cx"> PASS setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 83 [doctype, 0] 
+PASS setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 84 [doctype, -17] 
+PASS setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 85 [doctype, 1] 
+PASS setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -4530,21 +4080,11 @@
</span><span class="cx"> PASS setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 83 [doctype, 0] 
+PASS setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 84 [doctype, -17] 
+PASS setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 85 [doctype, 1] 
+PASS setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -4628,21 +4168,11 @@
</span><span class="cx"> PASS setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 83 [doctype, 0] 
+PASS setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 84 [doctype, -17] 
+PASS setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 85 [doctype, 1] 
+PASS setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -4726,21 +4256,11 @@
</span><span class="cx"> PASS setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 83 [doctype, 0] 
+PASS setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 84 [doctype, -17] 
+PASS setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 85 [doctype, 1] 
+PASS setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -4824,21 +4344,11 @@
</span><span class="cx"> PASS setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 83 [doctype, 0] 
+PASS setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 84 [doctype, -17] 
+PASS setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 85 [doctype, 1] 
+PASS setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -4922,21 +4432,11 @@
</span><span class="cx"> PASS setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 83 [doctype, 0] 
+PASS setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 84 [doctype, -17] 
+PASS setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 85 [doctype, 1] 
+PASS setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -5020,21 +4520,11 @@
</span><span class="cx"> PASS setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 83 [doctype, 0] 
+PASS setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 84 [doctype, -17] 
+PASS setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 85 [doctype, 1] 
+PASS setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 13 [document.head, 1, document.head, 1], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 13 [document.head, 1, document.head, 1], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 13 [document.head, 1, document.head, 1], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -5118,21 +4608,11 @@
</span><span class="cx"> PASS setEnd() with range 13 [document.head, 1, document.head, 1], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 13 [document.head, 1, document.head, 1], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 13 [document.head, 1, document.head, 1], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 13 [document.head, 1, document.head, 1], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 13 [document.head, 1, document.head, 1], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 13 [document.head, 1, document.head, 1], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 13 [document.head, 1, document.head, 1], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 13 [document.head, 1, document.head, 1], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 13 [document.head, 1, document.head, 1], point 83 [doctype, 0] 
+PASS setEnd() with range 13 [document.head, 1, document.head, 1], point 84 [doctype, -17] 
+PASS setEnd() with range 13 [document.head, 1, document.head, 1], point 85 [doctype, 1] 
+PASS setEnd() with range 13 [document.head, 1, document.head, 1], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 13 [document.head, 1, document.head, 1], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 14 [document.body, 4, document.body, 5], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 14 [document.body, 4, document.body, 5], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 14 [document.body, 4, document.body, 5], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -5216,21 +4696,11 @@
</span><span class="cx"> PASS setEnd() with range 14 [document.body, 4, document.body, 5], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 14 [document.body, 4, document.body, 5], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 14 [document.body, 4, document.body, 5], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 14 [document.body, 4, document.body, 5], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 14 [document.body, 4, document.body, 5], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 14 [document.body, 4, document.body, 5], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 14 [document.body, 4, document.body, 5], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 14 [document.body, 4, document.body, 5], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 14 [document.body, 4, document.body, 5], point 83 [doctype, 0] 
+PASS setEnd() with range 14 [document.body, 4, document.body, 5], point 84 [doctype, -17] 
+PASS setEnd() with range 14 [document.body, 4, document.body, 5], point 85 [doctype, 1] 
+PASS setEnd() with range 14 [document.body, 4, document.body, 5], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 14 [document.body, 4, document.body, 5], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -5314,21 +4784,11 @@
</span><span class="cx"> PASS setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 83 [doctype, 0] 
+PASS setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 84 [doctype, -17] 
+PASS setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 85 [doctype, 1] 
+PASS setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 16 [paras[0], 0, paras[0], 1], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 16 [paras[0], 0, paras[0], 1], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 16 [paras[0], 0, paras[0], 1], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -5412,21 +4872,11 @@
</span><span class="cx"> PASS setEnd() with range 16 [paras[0], 0, paras[0], 1], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 16 [paras[0], 0, paras[0], 1], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 16 [paras[0], 0, paras[0], 1], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 16 [paras[0], 0, paras[0], 1], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 16 [paras[0], 0, paras[0], 1], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 16 [paras[0], 0, paras[0], 1], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 16 [paras[0], 0, paras[0], 1], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 16 [paras[0], 0, paras[0], 1], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 16 [paras[0], 0, paras[0], 1], point 83 [doctype, 0] 
+PASS setEnd() with range 16 [paras[0], 0, paras[0], 1], point 84 [doctype, -17] 
+PASS setEnd() with range 16 [paras[0], 0, paras[0], 1], point 85 [doctype, 1] 
+PASS setEnd() with range 16 [paras[0], 0, paras[0], 1], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 16 [paras[0], 0, paras[0], 1], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -5510,21 +4960,11 @@
</span><span class="cx"> PASS setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 83 [doctype, 0] 
+PASS setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 84 [doctype, -17] 
+PASS setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 85 [doctype, 1] 
+PASS setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -5608,21 +5048,11 @@
</span><span class="cx"> PASS setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 83 [doctype, 0] 
+PASS setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 84 [doctype, -17] 
+PASS setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 85 [doctype, 1] 
+PASS setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -5706,21 +5136,11 @@
</span><span class="cx"> PASS setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 83 [doctype, 0] 
+PASS setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 84 [doctype, -17] 
+PASS setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 85 [doctype, 1] 
+PASS setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -5804,21 +5224,11 @@
</span><span class="cx"> PASS setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 83 [doctype, 0] 
+PASS setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 84 [doctype, -17] 
+PASS setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 85 [doctype, 1] 
+PASS setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -5902,21 +5312,11 @@
</span><span class="cx"> PASS setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 83 [doctype, 0] 
+PASS setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 84 [doctype, -17] 
+PASS setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 85 [doctype, 1] 
+PASS setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 22 [testDiv, 2, paras[4], 1], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 22 [testDiv, 2, paras[4], 1], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 22 [testDiv, 2, paras[4], 1], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -6000,21 +5400,11 @@
</span><span class="cx"> PASS setEnd() with range 22 [testDiv, 2, paras[4], 1], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 22 [testDiv, 2, paras[4], 1], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 22 [testDiv, 2, paras[4], 1], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 22 [testDiv, 2, paras[4], 1], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 22 [testDiv, 2, paras[4], 1], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 22 [testDiv, 2, paras[4], 1], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 22 [testDiv, 2, paras[4], 1], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 22 [testDiv, 2, paras[4], 1], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 22 [testDiv, 2, paras[4], 1], point 83 [doctype, 0] 
+PASS setEnd() with range 22 [testDiv, 2, paras[4], 1], point 84 [doctype, -17] 
+PASS setEnd() with range 22 [testDiv, 2, paras[4], 1], point 85 [doctype, 1] 
+PASS setEnd() with range 22 [testDiv, 2, paras[4], 1], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 22 [testDiv, 2, paras[4], 1], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 23 [document, 0, document, 1], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 23 [document, 0, document, 1], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 23 [document, 0, document, 1], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -6098,21 +5488,11 @@
</span><span class="cx"> PASS setEnd() with range 23 [document, 0, document, 1], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 23 [document, 0, document, 1], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 23 [document, 0, document, 1], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 23 [document, 0, document, 1], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 23 [document, 0, document, 1], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 23 [document, 0, document, 1], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 23 [document, 0, document, 1], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 23 [document, 0, document, 1], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 23 [document, 0, document, 1], point 83 [doctype, 0] 
+PASS setEnd() with range 23 [document, 0, document, 1], point 84 [doctype, -17] 
+PASS setEnd() with range 23 [document, 0, document, 1], point 85 [doctype, 1] 
+PASS setEnd() with range 23 [document, 0, document, 1], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 23 [document, 0, document, 1], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 24 [document, 0, document, 2], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 24 [document, 0, document, 2], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 24 [document, 0, document, 2], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -6196,21 +5576,11 @@
</span><span class="cx"> PASS setEnd() with range 24 [document, 0, document, 2], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 24 [document, 0, document, 2], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 24 [document, 0, document, 2], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 24 [document, 0, document, 2], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 24 [document, 0, document, 2], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 24 [document, 0, document, 2], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 24 [document, 0, document, 2], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 24 [document, 0, document, 2], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 24 [document, 0, document, 2], point 83 [doctype, 0] 
+PASS setEnd() with range 24 [document, 0, document, 2], point 84 [doctype, -17] 
+PASS setEnd() with range 24 [document, 0, document, 2], point 85 [doctype, 1] 
+PASS setEnd() with range 24 [document, 0, document, 2], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 24 [document, 0, document, 2], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 25 [comment, 2, comment, 3], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 25 [comment, 2, comment, 3], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 25 [comment, 2, comment, 3], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -6294,21 +5664,11 @@
</span><span class="cx"> PASS setEnd() with range 25 [comment, 2, comment, 3], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 25 [comment, 2, comment, 3], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 25 [comment, 2, comment, 3], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 25 [comment, 2, comment, 3], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 25 [comment, 2, comment, 3], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 25 [comment, 2, comment, 3], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 25 [comment, 2, comment, 3], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 25 [comment, 2, comment, 3], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 25 [comment, 2, comment, 3], point 83 [doctype, 0] 
+PASS setEnd() with range 25 [comment, 2, comment, 3], point 84 [doctype, -17] 
+PASS setEnd() with range 25 [comment, 2, comment, 3], point 85 [doctype, 1] 
+PASS setEnd() with range 25 [comment, 2, comment, 3], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 25 [comment, 2, comment, 3], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 26 [testDiv, 0, comment, 5], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 26 [testDiv, 0, comment, 5], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 26 [testDiv, 0, comment, 5], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -6392,21 +5752,11 @@
</span><span class="cx"> PASS setEnd() with range 26 [testDiv, 0, comment, 5], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 26 [testDiv, 0, comment, 5], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 26 [testDiv, 0, comment, 5], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 26 [testDiv, 0, comment, 5], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 26 [testDiv, 0, comment, 5], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 26 [testDiv, 0, comment, 5], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 26 [testDiv, 0, comment, 5], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 26 [testDiv, 0, comment, 5], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 26 [testDiv, 0, comment, 5], point 83 [doctype, 0] 
+PASS setEnd() with range 26 [testDiv, 0, comment, 5], point 84 [doctype, -17] 
+PASS setEnd() with range 26 [testDiv, 0, comment, 5], point 85 [doctype, 1] 
+PASS setEnd() with range 26 [testDiv, 0, comment, 5], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 26 [testDiv, 0, comment, 5], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -6490,21 +5840,11 @@
</span><span class="cx"> PASS setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 83 [doctype, 0] 
+PASS setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 84 [doctype, -17] 
+PASS setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 85 [doctype, 1] 
+PASS setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -6588,21 +5928,11 @@
</span><span class="cx"> PASS setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 83 [doctype, 0] 
+PASS setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 84 [doctype, -17] 
+PASS setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 85 [doctype, 1] 
+PASS setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -6686,21 +6016,11 @@
</span><span class="cx"> PASS setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 83 [doctype, 0] 
+PASS setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 84 [doctype, -17] 
+PASS setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 85 [doctype, 1] 
+PASS setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -6784,21 +6104,11 @@
</span><span class="cx"> PASS setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 83 [doctype, 0] 
+PASS setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 84 [doctype, -17] 
+PASS setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 85 [doctype, 1] 
+PASS setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -6882,21 +6192,11 @@
</span><span class="cx"> PASS setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 83 [doctype, 0] 
+PASS setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 84 [doctype, -17] 
+PASS setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 85 [doctype, 1] 
+PASS setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -6980,21 +6280,11 @@
</span><span class="cx"> PASS setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 83 [doctype, 0] 
+PASS setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 84 [doctype, -17] 
+PASS setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 85 [doctype, 1] 
+PASS setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -7078,21 +6368,11 @@
</span><span class="cx"> PASS setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 83 [doctype, 0] 
+PASS setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 84 [doctype, -17] 
+PASS setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 85 [doctype, 1] 
+PASS setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -7176,21 +6456,11 @@
</span><span class="cx"> PASS setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 83 [doctype, 0] 
+PASS setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 84 [doctype, -17] 
+PASS setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 85 [doctype, 1] 
+PASS setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -7274,21 +6544,11 @@
</span><span class="cx"> PASS setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 83 [doctype, 0] 
+PASS setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 84 [doctype, -17] 
+PASS setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 85 [doctype, 1] 
+PASS setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 36 [docfrag, 0, docfrag, 0], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 36 [docfrag, 0, docfrag, 0], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 36 [docfrag, 0, docfrag, 0], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -7372,21 +6632,11 @@
</span><span class="cx"> PASS setEnd() with range 36 [docfrag, 0, docfrag, 0], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 36 [docfrag, 0, docfrag, 0], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 36 [docfrag, 0, docfrag, 0], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 36 [docfrag, 0, docfrag, 0], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 36 [docfrag, 0, docfrag, 0], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 36 [docfrag, 0, docfrag, 0], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 36 [docfrag, 0, docfrag, 0], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 36 [docfrag, 0, docfrag, 0], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 36 [docfrag, 0, docfrag, 0], point 83 [doctype, 0] 
+PASS setEnd() with range 36 [docfrag, 0, docfrag, 0], point 84 [doctype, -17] 
+PASS setEnd() with range 36 [docfrag, 0, docfrag, 0], point 85 [doctype, 1] 
+PASS setEnd() with range 36 [docfrag, 0, docfrag, 0], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 36 [docfrag, 0, docfrag, 0], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 0 [paras[0].firstChild, -1] 
</span><span class="cx"> PASS setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 1 [paras[0].firstChild, 0] 
</span><span class="cx"> PASS setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 2 [paras[0].firstChild, 1] 
</span><span class="lines">@@ -7470,21 +6720,11 @@
</span><span class="cx"> PASS setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 80 [docfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 81 [foreignDocfrag, 0] 
</span><span class="cx"> PASS setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 82 [xmlDocfrag, 0] 
</span><del>-FAIL setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEnd(node, offset);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 83 [doctype, 0] 
+PASS setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 84 [doctype, -17] 
+PASS setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 85 [doctype, 1] 
+PASS setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 87 [xmlDoctype, 0] 
</ins><span class="cx"> PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 0 paras[0] 
</span><span class="cx"> PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 1 paras[0].firstChild 
</span><span class="cx"> PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 2 paras[1].firstChild 
</span><span class="lines">@@ -7492,35 +6732,19 @@
</span><span class="cx"> PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 7 document 
+PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 8 detachedDiv 
+PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 17 comment 
</span><del>-FAIL setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 18 detachedComment 
+PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 0 paras[0] 
</span><span class="lines">@@ -7530,35 +6754,19 @@
</span><span class="cx"> PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 7 document 
+PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 8 detachedDiv 
+PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 17 comment 
</span><del>-FAIL setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 18 detachedComment 
+PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 0 paras[0] 
</span><span class="lines">@@ -7568,35 +6776,19 @@
</span><span class="cx"> PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 7 document 
+PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 8 detachedDiv 
+PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 17 comment 
</span><del>-FAIL setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 18 detachedComment 
+PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 0 paras[0] 
</span><span class="lines">@@ -7606,35 +6798,19 @@
</span><span class="cx"> PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 7 document 
+PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 8 detachedDiv 
+PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 17 comment 
</span><del>-FAIL setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 18 detachedComment 
+PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 0 paras[0] 
</span><span class="lines">@@ -7644,35 +6820,19 @@
</span><span class="cx"> PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 7 document 
+PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 8 detachedDiv 
+PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 17 comment 
</span><del>-FAIL setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 18 detachedComment 
+PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 0 paras[0] 
</span><span class="lines">@@ -7682,35 +6842,19 @@
</span><span class="cx"> PASS setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 7 document 
+PASS setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 8 detachedDiv 
+PASS setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 17 comment 
</span><del>-FAIL setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 18 detachedComment 
+PASS setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 0 paras[0] 
</span><span class="lines">@@ -7720,35 +6864,19 @@
</span><span class="cx"> PASS setStartBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 7 document 
+PASS setStartBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 8 detachedDiv 
+PASS setStartBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 17 comment 
</span><del>-FAIL setStartBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 18 detachedComment 
+PASS setStartBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 0 paras[0] 
</span><span class="lines">@@ -7758,35 +6886,19 @@
</span><span class="cx"> PASS setStartBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 7 document 
+PASS setStartBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 8 detachedDiv 
+PASS setStartBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 17 comment 
</span><del>-FAIL setStartBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 18 detachedComment 
+PASS setStartBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 0 paras[0] 
</span><span class="lines">@@ -7796,35 +6908,19 @@
</span><span class="cx"> PASS setStartBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 7 document 
+PASS setStartBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 8 detachedDiv 
+PASS setStartBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 17 comment 
</span><del>-FAIL setStartBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 18 detachedComment 
+PASS setStartBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 0 paras[0] 
</span><span class="lines">@@ -7834,35 +6930,19 @@
</span><span class="cx"> PASS setStartBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 7 document 
+PASS setStartBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 8 detachedDiv 
+PASS setStartBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 17 comment 
</span><del>-FAIL setStartBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 18 detachedComment 
+PASS setStartBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 0 paras[0] 
</span><span class="lines">@@ -7872,35 +6952,19 @@
</span><span class="cx"> PASS setStartBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 7 document 
+PASS setStartBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 8 detachedDiv 
+PASS setStartBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 17 comment 
</span><del>-FAIL setStartBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 18 detachedComment 
+PASS setStartBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 0 paras[0] 
</span><span class="lines">@@ -7910,35 +6974,19 @@
</span><span class="cx"> PASS setStartBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 7 document 
+PASS setStartBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 8 detachedDiv 
+PASS setStartBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 17 comment 
</span><del>-FAIL setStartBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 18 detachedComment 
+PASS setStartBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 0 paras[0] 
</span><span class="lines">@@ -7948,35 +6996,19 @@
</span><span class="cx"> PASS setStartBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 7 document 
+PASS setStartBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 8 detachedDiv 
+PASS setStartBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 17 comment 
</span><del>-FAIL setStartBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 18 detachedComment 
+PASS setStartBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 13 [document.head, 1, document.head, 1], node 0 paras[0] 
</span><span class="lines">@@ -7986,35 +7018,19 @@
</span><span class="cx"> PASS setStartBefore() with range 13 [document.head, 1, document.head, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 13 [document.head, 1, document.head, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 13 [document.head, 1, document.head, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 13 [document.head, 1, document.head, 1], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 13 [document.head, 1, document.head, 1], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 13 [document.head, 1, document.head, 1], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 13 [document.head, 1, document.head, 1], node 7 document 
+PASS setStartBefore() with range 13 [document.head, 1, document.head, 1], node 8 detachedDiv 
+PASS setStartBefore() with range 13 [document.head, 1, document.head, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 13 [document.head, 1, document.head, 1], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 13 [document.head, 1, document.head, 1], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 13 [document.head, 1, document.head, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 13 [document.head, 1, document.head, 1], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 13 [document.head, 1, document.head, 1], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 13 [document.head, 1, document.head, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 13 [document.head, 1, document.head, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 13 [document.head, 1, document.head, 1], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 13 [document.head, 1, document.head, 1], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 13 [document.head, 1, document.head, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 13 [document.head, 1, document.head, 1], node 17 comment 
</span><del>-FAIL setStartBefore() with range 13 [document.head, 1, document.head, 1], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 13 [document.head, 1, document.head, 1], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 13 [document.head, 1, document.head, 1], node 18 detachedComment 
+PASS setStartBefore() with range 13 [document.head, 1, document.head, 1], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 13 [document.head, 1, document.head, 1], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 13 [document.head, 1, document.head, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 14 [document.body, 4, document.body, 5], node 0 paras[0] 
</span><span class="lines">@@ -8024,35 +7040,19 @@
</span><span class="cx"> PASS setStartBefore() with range 14 [document.body, 4, document.body, 5], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 14 [document.body, 4, document.body, 5], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 14 [document.body, 4, document.body, 5], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 14 [document.body, 4, document.body, 5], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 14 [document.body, 4, document.body, 5], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 14 [document.body, 4, document.body, 5], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 14 [document.body, 4, document.body, 5], node 7 document 
+PASS setStartBefore() with range 14 [document.body, 4, document.body, 5], node 8 detachedDiv 
+PASS setStartBefore() with range 14 [document.body, 4, document.body, 5], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 14 [document.body, 4, document.body, 5], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 14 [document.body, 4, document.body, 5], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 14 [document.body, 4, document.body, 5], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 14 [document.body, 4, document.body, 5], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 14 [document.body, 4, document.body, 5], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 14 [document.body, 4, document.body, 5], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 14 [document.body, 4, document.body, 5], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 14 [document.body, 4, document.body, 5], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 14 [document.body, 4, document.body, 5], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 14 [document.body, 4, document.body, 5], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 14 [document.body, 4, document.body, 5], node 17 comment 
</span><del>-FAIL setStartBefore() with range 14 [document.body, 4, document.body, 5], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 14 [document.body, 4, document.body, 5], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 14 [document.body, 4, document.body, 5], node 18 detachedComment 
+PASS setStartBefore() with range 14 [document.body, 4, document.body, 5], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 14 [document.body, 4, document.body, 5], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 14 [document.body, 4, document.body, 5], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 0 paras[0] 
</span><span class="lines">@@ -8062,35 +7062,19 @@
</span><span class="cx"> PASS setStartBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 7 document 
+PASS setStartBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 8 detachedDiv 
+PASS setStartBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 17 comment 
</span><del>-FAIL setStartBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 18 detachedComment 
+PASS setStartBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 16 [paras[0], 0, paras[0], 1], node 0 paras[0] 
</span><span class="lines">@@ -8100,35 +7084,19 @@
</span><span class="cx"> PASS setStartBefore() with range 16 [paras[0], 0, paras[0], 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 16 [paras[0], 0, paras[0], 1], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 16 [paras[0], 0, paras[0], 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 16 [paras[0], 0, paras[0], 1], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 16 [paras[0], 0, paras[0], 1], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 16 [paras[0], 0, paras[0], 1], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 16 [paras[0], 0, paras[0], 1], node 7 document 
+PASS setStartBefore() with range 16 [paras[0], 0, paras[0], 1], node 8 detachedDiv 
+PASS setStartBefore() with range 16 [paras[0], 0, paras[0], 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 16 [paras[0], 0, paras[0], 1], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 16 [paras[0], 0, paras[0], 1], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 16 [paras[0], 0, paras[0], 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 16 [paras[0], 0, paras[0], 1], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 16 [paras[0], 0, paras[0], 1], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 16 [paras[0], 0, paras[0], 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 16 [paras[0], 0, paras[0], 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 16 [paras[0], 0, paras[0], 1], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 16 [paras[0], 0, paras[0], 1], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 16 [paras[0], 0, paras[0], 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 16 [paras[0], 0, paras[0], 1], node 17 comment 
</span><del>-FAIL setStartBefore() with range 16 [paras[0], 0, paras[0], 1], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 16 [paras[0], 0, paras[0], 1], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 16 [paras[0], 0, paras[0], 1], node 18 detachedComment 
+PASS setStartBefore() with range 16 [paras[0], 0, paras[0], 1], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 16 [paras[0], 0, paras[0], 1], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 16 [paras[0], 0, paras[0], 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 0 paras[0] 
</span><span class="lines">@@ -8138,35 +7106,19 @@
</span><span class="cx"> PASS setStartBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 7 document 
+PASS setStartBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 8 detachedDiv 
+PASS setStartBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 17 comment 
</span><del>-FAIL setStartBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 18 detachedComment 
+PASS setStartBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 0 paras[0] 
</span><span class="lines">@@ -8176,35 +7128,19 @@
</span><span class="cx"> PASS setStartBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 7 document 
+PASS setStartBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 8 detachedDiv 
+PASS setStartBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 17 comment 
</span><del>-FAIL setStartBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 18 detachedComment 
+PASS setStartBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 0 paras[0] 
</span><span class="lines">@@ -8214,35 +7150,19 @@
</span><span class="cx"> PASS setStartBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 7 document 
+PASS setStartBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 8 detachedDiv 
+PASS setStartBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 17 comment 
</span><del>-FAIL setStartBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 18 detachedComment 
+PASS setStartBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 0 paras[0] 
</span><span class="lines">@@ -8252,35 +7172,19 @@
</span><span class="cx"> PASS setStartBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 7 document 
+PASS setStartBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 8 detachedDiv 
+PASS setStartBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 17 comment 
</span><del>-FAIL setStartBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 18 detachedComment 
+PASS setStartBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 0 paras[0] 
</span><span class="lines">@@ -8290,35 +7194,19 @@
</span><span class="cx"> PASS setStartBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 7 document 
+PASS setStartBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 8 detachedDiv 
+PASS setStartBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 17 comment 
</span><del>-FAIL setStartBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 18 detachedComment 
+PASS setStartBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 22 [testDiv, 2, paras[4], 1], node 0 paras[0] 
</span><span class="lines">@@ -8328,35 +7216,19 @@
</span><span class="cx"> PASS setStartBefore() with range 22 [testDiv, 2, paras[4], 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 22 [testDiv, 2, paras[4], 1], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 22 [testDiv, 2, paras[4], 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 22 [testDiv, 2, paras[4], 1], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 22 [testDiv, 2, paras[4], 1], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 22 [testDiv, 2, paras[4], 1], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 22 [testDiv, 2, paras[4], 1], node 7 document 
+PASS setStartBefore() with range 22 [testDiv, 2, paras[4], 1], node 8 detachedDiv 
+PASS setStartBefore() with range 22 [testDiv, 2, paras[4], 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 22 [testDiv, 2, paras[4], 1], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 22 [testDiv, 2, paras[4], 1], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 22 [testDiv, 2, paras[4], 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 22 [testDiv, 2, paras[4], 1], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 22 [testDiv, 2, paras[4], 1], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 22 [testDiv, 2, paras[4], 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 22 [testDiv, 2, paras[4], 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 22 [testDiv, 2, paras[4], 1], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 22 [testDiv, 2, paras[4], 1], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 22 [testDiv, 2, paras[4], 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 22 [testDiv, 2, paras[4], 1], node 17 comment 
</span><del>-FAIL setStartBefore() with range 22 [testDiv, 2, paras[4], 1], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 22 [testDiv, 2, paras[4], 1], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 22 [testDiv, 2, paras[4], 1], node 18 detachedComment 
+PASS setStartBefore() with range 22 [testDiv, 2, paras[4], 1], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 22 [testDiv, 2, paras[4], 1], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 22 [testDiv, 2, paras[4], 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 23 [document, 0, document, 1], node 0 paras[0] 
</span><span class="lines">@@ -8366,35 +7238,19 @@
</span><span class="cx"> PASS setStartBefore() with range 23 [document, 0, document, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 23 [document, 0, document, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 23 [document, 0, document, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 23 [document, 0, document, 1], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 23 [document, 0, document, 1], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 23 [document, 0, document, 1], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 23 [document, 0, document, 1], node 7 document 
+PASS setStartBefore() with range 23 [document, 0, document, 1], node 8 detachedDiv 
+PASS setStartBefore() with range 23 [document, 0, document, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 23 [document, 0, document, 1], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 23 [document, 0, document, 1], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 23 [document, 0, document, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 23 [document, 0, document, 1], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 23 [document, 0, document, 1], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 23 [document, 0, document, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 23 [document, 0, document, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 23 [document, 0, document, 1], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 23 [document, 0, document, 1], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 23 [document, 0, document, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 23 [document, 0, document, 1], node 17 comment 
</span><del>-FAIL setStartBefore() with range 23 [document, 0, document, 1], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 23 [document, 0, document, 1], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 23 [document, 0, document, 1], node 18 detachedComment 
+PASS setStartBefore() with range 23 [document, 0, document, 1], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 23 [document, 0, document, 1], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 23 [document, 0, document, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 24 [document, 0, document, 2], node 0 paras[0] 
</span><span class="lines">@@ -8404,35 +7260,19 @@
</span><span class="cx"> PASS setStartBefore() with range 24 [document, 0, document, 2], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 24 [document, 0, document, 2], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 24 [document, 0, document, 2], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 24 [document, 0, document, 2], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 24 [document, 0, document, 2], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 24 [document, 0, document, 2], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 24 [document, 0, document, 2], node 7 document 
+PASS setStartBefore() with range 24 [document, 0, document, 2], node 8 detachedDiv 
+PASS setStartBefore() with range 24 [document, 0, document, 2], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 24 [document, 0, document, 2], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 24 [document, 0, document, 2], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 24 [document, 0, document, 2], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 24 [document, 0, document, 2], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 24 [document, 0, document, 2], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 24 [document, 0, document, 2], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 24 [document, 0, document, 2], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 24 [document, 0, document, 2], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 24 [document, 0, document, 2], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 24 [document, 0, document, 2], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 24 [document, 0, document, 2], node 17 comment 
</span><del>-FAIL setStartBefore() with range 24 [document, 0, document, 2], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 24 [document, 0, document, 2], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 24 [document, 0, document, 2], node 18 detachedComment 
+PASS setStartBefore() with range 24 [document, 0, document, 2], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 24 [document, 0, document, 2], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 24 [document, 0, document, 2], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 25 [comment, 2, comment, 3], node 0 paras[0] 
</span><span class="lines">@@ -8442,35 +7282,19 @@
</span><span class="cx"> PASS setStartBefore() with range 25 [comment, 2, comment, 3], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 25 [comment, 2, comment, 3], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 25 [comment, 2, comment, 3], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 25 [comment, 2, comment, 3], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 25 [comment, 2, comment, 3], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 25 [comment, 2, comment, 3], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 25 [comment, 2, comment, 3], node 7 document 
+PASS setStartBefore() with range 25 [comment, 2, comment, 3], node 8 detachedDiv 
+PASS setStartBefore() with range 25 [comment, 2, comment, 3], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 25 [comment, 2, comment, 3], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 25 [comment, 2, comment, 3], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 25 [comment, 2, comment, 3], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 25 [comment, 2, comment, 3], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 25 [comment, 2, comment, 3], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 25 [comment, 2, comment, 3], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 25 [comment, 2, comment, 3], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 25 [comment, 2, comment, 3], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 25 [comment, 2, comment, 3], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 25 [comment, 2, comment, 3], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 25 [comment, 2, comment, 3], node 17 comment 
</span><del>-FAIL setStartBefore() with range 25 [comment, 2, comment, 3], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 25 [comment, 2, comment, 3], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 25 [comment, 2, comment, 3], node 18 detachedComment 
+PASS setStartBefore() with range 25 [comment, 2, comment, 3], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 25 [comment, 2, comment, 3], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 25 [comment, 2, comment, 3], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 26 [testDiv, 0, comment, 5], node 0 paras[0] 
</span><span class="lines">@@ -8480,35 +7304,19 @@
</span><span class="cx"> PASS setStartBefore() with range 26 [testDiv, 0, comment, 5], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 26 [testDiv, 0, comment, 5], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 26 [testDiv, 0, comment, 5], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 26 [testDiv, 0, comment, 5], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 26 [testDiv, 0, comment, 5], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 26 [testDiv, 0, comment, 5], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 26 [testDiv, 0, comment, 5], node 7 document 
+PASS setStartBefore() with range 26 [testDiv, 0, comment, 5], node 8 detachedDiv 
+PASS setStartBefore() with range 26 [testDiv, 0, comment, 5], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 26 [testDiv, 0, comment, 5], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 26 [testDiv, 0, comment, 5], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 26 [testDiv, 0, comment, 5], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 26 [testDiv, 0, comment, 5], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 26 [testDiv, 0, comment, 5], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 26 [testDiv, 0, comment, 5], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 26 [testDiv, 0, comment, 5], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 26 [testDiv, 0, comment, 5], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 26 [testDiv, 0, comment, 5], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 26 [testDiv, 0, comment, 5], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 26 [testDiv, 0, comment, 5], node 17 comment 
</span><del>-FAIL setStartBefore() with range 26 [testDiv, 0, comment, 5], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 26 [testDiv, 0, comment, 5], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 26 [testDiv, 0, comment, 5], node 18 detachedComment 
+PASS setStartBefore() with range 26 [testDiv, 0, comment, 5], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 26 [testDiv, 0, comment, 5], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 26 [testDiv, 0, comment, 5], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 0 paras[0] 
</span><span class="lines">@@ -8518,35 +7326,19 @@
</span><span class="cx"> PASS setStartBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 7 document 
+PASS setStartBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 8 detachedDiv 
+PASS setStartBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 17 comment 
</span><del>-FAIL setStartBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 18 detachedComment 
+PASS setStartBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 0 paras[0] 
</span><span class="lines">@@ -8556,35 +7348,19 @@
</span><span class="cx"> PASS setStartBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 7 document 
+PASS setStartBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 8 detachedDiv 
+PASS setStartBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 17 comment 
</span><del>-FAIL setStartBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 18 detachedComment 
+PASS setStartBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 0 paras[0] 
</span><span class="lines">@@ -8594,35 +7370,19 @@
</span><span class="cx"> PASS setStartBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 7 document 
+PASS setStartBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 8 detachedDiv 
+PASS setStartBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 17 comment 
</span><del>-FAIL setStartBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 18 detachedComment 
+PASS setStartBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 0 paras[0] 
</span><span class="lines">@@ -8632,35 +7392,19 @@
</span><span class="cx"> PASS setStartBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 7 document 
+PASS setStartBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 8 detachedDiv 
+PASS setStartBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 17 comment 
</span><del>-FAIL setStartBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 18 detachedComment 
+PASS setStartBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 0 paras[0] 
</span><span class="lines">@@ -8670,35 +7414,19 @@
</span><span class="cx"> PASS setStartBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 7 document 
+PASS setStartBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 8 detachedDiv 
+PASS setStartBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 17 comment 
</span><del>-FAIL setStartBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 18 detachedComment 
+PASS setStartBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 0 paras[0] 
</span><span class="lines">@@ -8708,35 +7436,19 @@
</span><span class="cx"> PASS setStartBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 7 document 
+PASS setStartBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 8 detachedDiv 
+PASS setStartBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 17 comment 
</span><del>-FAIL setStartBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 18 detachedComment 
+PASS setStartBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 0 paras[0] 
</span><span class="lines">@@ -8746,35 +7458,19 @@
</span><span class="cx"> PASS setStartBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 7 document 
+PASS setStartBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 8 detachedDiv 
+PASS setStartBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 17 comment 
</span><del>-FAIL setStartBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 18 detachedComment 
+PASS setStartBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 0 paras[0] 
</span><span class="lines">@@ -8784,35 +7480,19 @@
</span><span class="cx"> PASS setStartBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 7 document 
+PASS setStartBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 8 detachedDiv 
+PASS setStartBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 17 comment 
</span><del>-FAIL setStartBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 18 detachedComment 
+PASS setStartBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 0 paras[0] 
</span><span class="lines">@@ -8822,35 +7502,19 @@
</span><span class="cx"> PASS setStartBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 7 document 
+PASS setStartBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 8 detachedDiv 
+PASS setStartBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 17 comment 
</span><del>-FAIL setStartBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 18 detachedComment 
+PASS setStartBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 36 [docfrag, 0, docfrag, 0], node 0 paras[0] 
</span><span class="lines">@@ -8860,35 +7524,19 @@
</span><span class="cx"> PASS setStartBefore() with range 36 [docfrag, 0, docfrag, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 36 [docfrag, 0, docfrag, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 36 [docfrag, 0, docfrag, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 36 [docfrag, 0, docfrag, 0], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 36 [docfrag, 0, docfrag, 0], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 36 [docfrag, 0, docfrag, 0], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 36 [docfrag, 0, docfrag, 0], node 7 document 
+PASS setStartBefore() with range 36 [docfrag, 0, docfrag, 0], node 8 detachedDiv 
+PASS setStartBefore() with range 36 [docfrag, 0, docfrag, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 36 [docfrag, 0, docfrag, 0], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 36 [docfrag, 0, docfrag, 0], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 36 [docfrag, 0, docfrag, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 36 [docfrag, 0, docfrag, 0], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 36 [docfrag, 0, docfrag, 0], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 36 [docfrag, 0, docfrag, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 36 [docfrag, 0, docfrag, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 36 [docfrag, 0, docfrag, 0], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 36 [docfrag, 0, docfrag, 0], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 36 [docfrag, 0, docfrag, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 36 [docfrag, 0, docfrag, 0], node 17 comment 
</span><del>-FAIL setStartBefore() with range 36 [docfrag, 0, docfrag, 0], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 36 [docfrag, 0, docfrag, 0], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 36 [docfrag, 0, docfrag, 0], node 18 detachedComment 
+PASS setStartBefore() with range 36 [docfrag, 0, docfrag, 0], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 36 [docfrag, 0, docfrag, 0], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 36 [docfrag, 0, docfrag, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 0 paras[0] 
</span><span class="lines">@@ -8898,35 +7546,19 @@
</span><span class="cx"> PASS setStartBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 5 detachedPara1 
</span><span class="cx"> PASS setStartBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 7 document 
+PASS setStartBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 8 detachedDiv 
+PASS setStartBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 10 foreignPara2 
</span><del>-FAIL setStartBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 12 xmlElement 
</span><del>-FAIL setStartBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 15 processingInstruction 
</span><del>-FAIL setStartBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 17 comment 
</span><del>-FAIL setStartBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 18 detachedComment 
+PASS setStartBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 19 docfrag 
</ins><span class="cx"> PASS setStartBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 20 doctype 
</span><span class="cx"> PASS setStartBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 0 paras[0] 
</span><span class="lines">@@ -8936,35 +7568,19 @@
</span><span class="cx"> PASS setStartAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 7 document 
+PASS setStartAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 8 detachedDiv 
+PASS setStartAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 17 comment 
</span><del>-FAIL setStartAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 18 detachedComment 
+PASS setStartAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 0 paras[0] 
</span><span class="lines">@@ -8974,35 +7590,19 @@
</span><span class="cx"> PASS setStartAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 7 document 
+PASS setStartAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 8 detachedDiv 
+PASS setStartAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 17 comment 
</span><del>-FAIL setStartAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 18 detachedComment 
+PASS setStartAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 0 paras[0] 
</span><span class="lines">@@ -9012,35 +7612,19 @@
</span><span class="cx"> PASS setStartAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 7 document 
+PASS setStartAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 8 detachedDiv 
+PASS setStartAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 17 comment 
</span><del>-FAIL setStartAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 18 detachedComment 
+PASS setStartAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 0 paras[0] 
</span><span class="lines">@@ -9050,35 +7634,19 @@
</span><span class="cx"> PASS setStartAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 7 document 
+PASS setStartAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 8 detachedDiv 
+PASS setStartAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 17 comment 
</span><del>-FAIL setStartAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 18 detachedComment 
+PASS setStartAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 0 paras[0] 
</span><span class="lines">@@ -9088,35 +7656,19 @@
</span><span class="cx"> PASS setStartAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 7 document 
+PASS setStartAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 8 detachedDiv 
+PASS setStartAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 17 comment 
</span><del>-FAIL setStartAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 18 detachedComment 
+PASS setStartAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 0 paras[0] 
</span><span class="lines">@@ -9126,35 +7678,19 @@
</span><span class="cx"> PASS setStartAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 7 document 
+PASS setStartAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 8 detachedDiv 
+PASS setStartAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 17 comment 
</span><del>-FAIL setStartAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 18 detachedComment 
+PASS setStartAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 0 paras[0] 
</span><span class="lines">@@ -9164,35 +7700,19 @@
</span><span class="cx"> PASS setStartAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 7 document 
+PASS setStartAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 8 detachedDiv 
+PASS setStartAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 17 comment 
</span><del>-FAIL setStartAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 18 detachedComment 
+PASS setStartAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 0 paras[0] 
</span><span class="lines">@@ -9202,35 +7722,19 @@
</span><span class="cx"> PASS setStartAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 7 document 
+PASS setStartAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 8 detachedDiv 
+PASS setStartAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 17 comment 
</span><del>-FAIL setStartAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 18 detachedComment 
+PASS setStartAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 0 paras[0] 
</span><span class="lines">@@ -9240,35 +7744,19 @@
</span><span class="cx"> PASS setStartAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 7 document 
+PASS setStartAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 8 detachedDiv 
+PASS setStartAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 17 comment 
</span><del>-FAIL setStartAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 18 detachedComment 
+PASS setStartAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 0 paras[0] 
</span><span class="lines">@@ -9278,35 +7766,19 @@
</span><span class="cx"> PASS setStartAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 7 document 
+PASS setStartAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 8 detachedDiv 
+PASS setStartAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 17 comment 
</span><del>-FAIL setStartAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 18 detachedComment 
+PASS setStartAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 0 paras[0] 
</span><span class="lines">@@ -9316,35 +7788,19 @@
</span><span class="cx"> PASS setStartAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 7 document 
+PASS setStartAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 8 detachedDiv 
+PASS setStartAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 17 comment 
</span><del>-FAIL setStartAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 18 detachedComment 
+PASS setStartAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 0 paras[0] 
</span><span class="lines">@@ -9354,35 +7810,19 @@
</span><span class="cx"> PASS setStartAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 7 document 
+PASS setStartAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 8 detachedDiv 
+PASS setStartAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 17 comment 
</span><del>-FAIL setStartAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 18 detachedComment 
+PASS setStartAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 0 paras[0] 
</span><span class="lines">@@ -9392,35 +7832,19 @@
</span><span class="cx"> PASS setStartAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 7 document 
+PASS setStartAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 8 detachedDiv 
+PASS setStartAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 17 comment 
</span><del>-FAIL setStartAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 18 detachedComment 
+PASS setStartAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 13 [document.head, 1, document.head, 1], node 0 paras[0] 
</span><span class="lines">@@ -9430,35 +7854,19 @@
</span><span class="cx"> PASS setStartAfter() with range 13 [document.head, 1, document.head, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 13 [document.head, 1, document.head, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 13 [document.head, 1, document.head, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 13 [document.head, 1, document.head, 1], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 13 [document.head, 1, document.head, 1], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 13 [document.head, 1, document.head, 1], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 13 [document.head, 1, document.head, 1], node 7 document 
+PASS setStartAfter() with range 13 [document.head, 1, document.head, 1], node 8 detachedDiv 
+PASS setStartAfter() with range 13 [document.head, 1, document.head, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 13 [document.head, 1, document.head, 1], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 13 [document.head, 1, document.head, 1], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 13 [document.head, 1, document.head, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 13 [document.head, 1, document.head, 1], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 13 [document.head, 1, document.head, 1], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 13 [document.head, 1, document.head, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 13 [document.head, 1, document.head, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 13 [document.head, 1, document.head, 1], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 13 [document.head, 1, document.head, 1], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 13 [document.head, 1, document.head, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 13 [document.head, 1, document.head, 1], node 17 comment 
</span><del>-FAIL setStartAfter() with range 13 [document.head, 1, document.head, 1], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 13 [document.head, 1, document.head, 1], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 13 [document.head, 1, document.head, 1], node 18 detachedComment 
+PASS setStartAfter() with range 13 [document.head, 1, document.head, 1], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 13 [document.head, 1, document.head, 1], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 13 [document.head, 1, document.head, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 14 [document.body, 4, document.body, 5], node 0 paras[0] 
</span><span class="lines">@@ -9468,35 +7876,19 @@
</span><span class="cx"> PASS setStartAfter() with range 14 [document.body, 4, document.body, 5], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 14 [document.body, 4, document.body, 5], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 14 [document.body, 4, document.body, 5], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 14 [document.body, 4, document.body, 5], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 14 [document.body, 4, document.body, 5], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 14 [document.body, 4, document.body, 5], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 14 [document.body, 4, document.body, 5], node 7 document 
+PASS setStartAfter() with range 14 [document.body, 4, document.body, 5], node 8 detachedDiv 
+PASS setStartAfter() with range 14 [document.body, 4, document.body, 5], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 14 [document.body, 4, document.body, 5], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 14 [document.body, 4, document.body, 5], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 14 [document.body, 4, document.body, 5], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 14 [document.body, 4, document.body, 5], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 14 [document.body, 4, document.body, 5], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 14 [document.body, 4, document.body, 5], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 14 [document.body, 4, document.body, 5], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 14 [document.body, 4, document.body, 5], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 14 [document.body, 4, document.body, 5], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 14 [document.body, 4, document.body, 5], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 14 [document.body, 4, document.body, 5], node 17 comment 
</span><del>-FAIL setStartAfter() with range 14 [document.body, 4, document.body, 5], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 14 [document.body, 4, document.body, 5], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 14 [document.body, 4, document.body, 5], node 18 detachedComment 
+PASS setStartAfter() with range 14 [document.body, 4, document.body, 5], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 14 [document.body, 4, document.body, 5], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 14 [document.body, 4, document.body, 5], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 0 paras[0] 
</span><span class="lines">@@ -9506,35 +7898,19 @@
</span><span class="cx"> PASS setStartAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 7 document 
+PASS setStartAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 8 detachedDiv 
+PASS setStartAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 17 comment 
</span><del>-FAIL setStartAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 18 detachedComment 
+PASS setStartAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 16 [paras[0], 0, paras[0], 1], node 0 paras[0] 
</span><span class="lines">@@ -9544,35 +7920,19 @@
</span><span class="cx"> PASS setStartAfter() with range 16 [paras[0], 0, paras[0], 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 16 [paras[0], 0, paras[0], 1], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 16 [paras[0], 0, paras[0], 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 16 [paras[0], 0, paras[0], 1], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 16 [paras[0], 0, paras[0], 1], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 16 [paras[0], 0, paras[0], 1], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 16 [paras[0], 0, paras[0], 1], node 7 document 
+PASS setStartAfter() with range 16 [paras[0], 0, paras[0], 1], node 8 detachedDiv 
+PASS setStartAfter() with range 16 [paras[0], 0, paras[0], 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 16 [paras[0], 0, paras[0], 1], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 16 [paras[0], 0, paras[0], 1], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 16 [paras[0], 0, paras[0], 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 16 [paras[0], 0, paras[0], 1], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 16 [paras[0], 0, paras[0], 1], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 16 [paras[0], 0, paras[0], 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 16 [paras[0], 0, paras[0], 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 16 [paras[0], 0, paras[0], 1], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 16 [paras[0], 0, paras[0], 1], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 16 [paras[0], 0, paras[0], 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 16 [paras[0], 0, paras[0], 1], node 17 comment 
</span><del>-FAIL setStartAfter() with range 16 [paras[0], 0, paras[0], 1], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 16 [paras[0], 0, paras[0], 1], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 16 [paras[0], 0, paras[0], 1], node 18 detachedComment 
+PASS setStartAfter() with range 16 [paras[0], 0, paras[0], 1], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 16 [paras[0], 0, paras[0], 1], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 16 [paras[0], 0, paras[0], 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 0 paras[0] 
</span><span class="lines">@@ -9582,35 +7942,19 @@
</span><span class="cx"> PASS setStartAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 7 document 
+PASS setStartAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 8 detachedDiv 
+PASS setStartAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 17 comment 
</span><del>-FAIL setStartAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 18 detachedComment 
+PASS setStartAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 0 paras[0] 
</span><span class="lines">@@ -9620,35 +7964,19 @@
</span><span class="cx"> PASS setStartAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 7 document 
+PASS setStartAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 8 detachedDiv 
+PASS setStartAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 17 comment 
</span><del>-FAIL setStartAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 18 detachedComment 
+PASS setStartAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 0 paras[0] 
</span><span class="lines">@@ -9658,35 +7986,19 @@
</span><span class="cx"> PASS setStartAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 7 document 
+PASS setStartAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 8 detachedDiv 
+PASS setStartAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 17 comment 
</span><del>-FAIL setStartAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 18 detachedComment 
+PASS setStartAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 0 paras[0] 
</span><span class="lines">@@ -9696,35 +8008,19 @@
</span><span class="cx"> PASS setStartAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 7 document 
+PASS setStartAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 8 detachedDiv 
+PASS setStartAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 17 comment 
</span><del>-FAIL setStartAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 18 detachedComment 
+PASS setStartAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 0 paras[0] 
</span><span class="lines">@@ -9734,35 +8030,19 @@
</span><span class="cx"> PASS setStartAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 7 document 
+PASS setStartAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 8 detachedDiv 
+PASS setStartAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 17 comment 
</span><del>-FAIL setStartAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 18 detachedComment 
+PASS setStartAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 22 [testDiv, 2, paras[4], 1], node 0 paras[0] 
</span><span class="lines">@@ -9772,35 +8052,19 @@
</span><span class="cx"> PASS setStartAfter() with range 22 [testDiv, 2, paras[4], 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 22 [testDiv, 2, paras[4], 1], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 22 [testDiv, 2, paras[4], 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 22 [testDiv, 2, paras[4], 1], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 22 [testDiv, 2, paras[4], 1], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 22 [testDiv, 2, paras[4], 1], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 22 [testDiv, 2, paras[4], 1], node 7 document 
+PASS setStartAfter() with range 22 [testDiv, 2, paras[4], 1], node 8 detachedDiv 
+PASS setStartAfter() with range 22 [testDiv, 2, paras[4], 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 22 [testDiv, 2, paras[4], 1], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 22 [testDiv, 2, paras[4], 1], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 22 [testDiv, 2, paras[4], 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 22 [testDiv, 2, paras[4], 1], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 22 [testDiv, 2, paras[4], 1], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 22 [testDiv, 2, paras[4], 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 22 [testDiv, 2, paras[4], 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 22 [testDiv, 2, paras[4], 1], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 22 [testDiv, 2, paras[4], 1], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 22 [testDiv, 2, paras[4], 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 22 [testDiv, 2, paras[4], 1], node 17 comment 
</span><del>-FAIL setStartAfter() with range 22 [testDiv, 2, paras[4], 1], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 22 [testDiv, 2, paras[4], 1], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 22 [testDiv, 2, paras[4], 1], node 18 detachedComment 
+PASS setStartAfter() with range 22 [testDiv, 2, paras[4], 1], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 22 [testDiv, 2, paras[4], 1], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 22 [testDiv, 2, paras[4], 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 23 [document, 0, document, 1], node 0 paras[0] 
</span><span class="lines">@@ -9810,35 +8074,19 @@
</span><span class="cx"> PASS setStartAfter() with range 23 [document, 0, document, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 23 [document, 0, document, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 23 [document, 0, document, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 23 [document, 0, document, 1], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 23 [document, 0, document, 1], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 23 [document, 0, document, 1], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 23 [document, 0, document, 1], node 7 document 
+PASS setStartAfter() with range 23 [document, 0, document, 1], node 8 detachedDiv 
+PASS setStartAfter() with range 23 [document, 0, document, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 23 [document, 0, document, 1], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 23 [document, 0, document, 1], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 23 [document, 0, document, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 23 [document, 0, document, 1], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 23 [document, 0, document, 1], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 23 [document, 0, document, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 23 [document, 0, document, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 23 [document, 0, document, 1], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 23 [document, 0, document, 1], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 23 [document, 0, document, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 23 [document, 0, document, 1], node 17 comment 
</span><del>-FAIL setStartAfter() with range 23 [document, 0, document, 1], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 23 [document, 0, document, 1], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 23 [document, 0, document, 1], node 18 detachedComment 
+PASS setStartAfter() with range 23 [document, 0, document, 1], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 23 [document, 0, document, 1], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 23 [document, 0, document, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 24 [document, 0, document, 2], node 0 paras[0] 
</span><span class="lines">@@ -9848,35 +8096,19 @@
</span><span class="cx"> PASS setStartAfter() with range 24 [document, 0, document, 2], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 24 [document, 0, document, 2], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 24 [document, 0, document, 2], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 24 [document, 0, document, 2], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 24 [document, 0, document, 2], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 24 [document, 0, document, 2], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 24 [document, 0, document, 2], node 7 document 
+PASS setStartAfter() with range 24 [document, 0, document, 2], node 8 detachedDiv 
+PASS setStartAfter() with range 24 [document, 0, document, 2], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 24 [document, 0, document, 2], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 24 [document, 0, document, 2], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 24 [document, 0, document, 2], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 24 [document, 0, document, 2], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 24 [document, 0, document, 2], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 24 [document, 0, document, 2], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 24 [document, 0, document, 2], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 24 [document, 0, document, 2], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 24 [document, 0, document, 2], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 24 [document, 0, document, 2], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 24 [document, 0, document, 2], node 17 comment 
</span><del>-FAIL setStartAfter() with range 24 [document, 0, document, 2], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 24 [document, 0, document, 2], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 24 [document, 0, document, 2], node 18 detachedComment 
+PASS setStartAfter() with range 24 [document, 0, document, 2], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 24 [document, 0, document, 2], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 24 [document, 0, document, 2], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 25 [comment, 2, comment, 3], node 0 paras[0] 
</span><span class="lines">@@ -9886,35 +8118,19 @@
</span><span class="cx"> PASS setStartAfter() with range 25 [comment, 2, comment, 3], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 25 [comment, 2, comment, 3], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 25 [comment, 2, comment, 3], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 25 [comment, 2, comment, 3], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 25 [comment, 2, comment, 3], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 25 [comment, 2, comment, 3], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 25 [comment, 2, comment, 3], node 7 document 
+PASS setStartAfter() with range 25 [comment, 2, comment, 3], node 8 detachedDiv 
+PASS setStartAfter() with range 25 [comment, 2, comment, 3], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 25 [comment, 2, comment, 3], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 25 [comment, 2, comment, 3], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 25 [comment, 2, comment, 3], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 25 [comment, 2, comment, 3], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 25 [comment, 2, comment, 3], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 25 [comment, 2, comment, 3], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 25 [comment, 2, comment, 3], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 25 [comment, 2, comment, 3], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 25 [comment, 2, comment, 3], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 25 [comment, 2, comment, 3], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 25 [comment, 2, comment, 3], node 17 comment 
</span><del>-FAIL setStartAfter() with range 25 [comment, 2, comment, 3], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 25 [comment, 2, comment, 3], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 25 [comment, 2, comment, 3], node 18 detachedComment 
+PASS setStartAfter() with range 25 [comment, 2, comment, 3], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 25 [comment, 2, comment, 3], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 25 [comment, 2, comment, 3], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 26 [testDiv, 0, comment, 5], node 0 paras[0] 
</span><span class="lines">@@ -9924,35 +8140,19 @@
</span><span class="cx"> PASS setStartAfter() with range 26 [testDiv, 0, comment, 5], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 26 [testDiv, 0, comment, 5], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 26 [testDiv, 0, comment, 5], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 26 [testDiv, 0, comment, 5], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 26 [testDiv, 0, comment, 5], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 26 [testDiv, 0, comment, 5], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 26 [testDiv, 0, comment, 5], node 7 document 
+PASS setStartAfter() with range 26 [testDiv, 0, comment, 5], node 8 detachedDiv 
+PASS setStartAfter() with range 26 [testDiv, 0, comment, 5], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 26 [testDiv, 0, comment, 5], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 26 [testDiv, 0, comment, 5], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 26 [testDiv, 0, comment, 5], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 26 [testDiv, 0, comment, 5], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 26 [testDiv, 0, comment, 5], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 26 [testDiv, 0, comment, 5], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 26 [testDiv, 0, comment, 5], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 26 [testDiv, 0, comment, 5], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 26 [testDiv, 0, comment, 5], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 26 [testDiv, 0, comment, 5], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 26 [testDiv, 0, comment, 5], node 17 comment 
</span><del>-FAIL setStartAfter() with range 26 [testDiv, 0, comment, 5], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 26 [testDiv, 0, comment, 5], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 26 [testDiv, 0, comment, 5], node 18 detachedComment 
+PASS setStartAfter() with range 26 [testDiv, 0, comment, 5], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 26 [testDiv, 0, comment, 5], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 26 [testDiv, 0, comment, 5], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 0 paras[0] 
</span><span class="lines">@@ -9962,35 +8162,19 @@
</span><span class="cx"> PASS setStartAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 7 document 
+PASS setStartAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 8 detachedDiv 
+PASS setStartAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 17 comment 
</span><del>-FAIL setStartAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 18 detachedComment 
+PASS setStartAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 0 paras[0] 
</span><span class="lines">@@ -10000,35 +8184,19 @@
</span><span class="cx"> PASS setStartAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 7 document 
+PASS setStartAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 8 detachedDiv 
+PASS setStartAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 17 comment 
</span><del>-FAIL setStartAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 18 detachedComment 
+PASS setStartAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 0 paras[0] 
</span><span class="lines">@@ -10038,35 +8206,19 @@
</span><span class="cx"> PASS setStartAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 7 document 
+PASS setStartAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 8 detachedDiv 
+PASS setStartAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 17 comment 
</span><del>-FAIL setStartAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 18 detachedComment 
+PASS setStartAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 0 paras[0] 
</span><span class="lines">@@ -10076,35 +8228,19 @@
</span><span class="cx"> PASS setStartAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 7 document 
+PASS setStartAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 8 detachedDiv 
+PASS setStartAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 17 comment 
</span><del>-FAIL setStartAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 18 detachedComment 
+PASS setStartAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 0 paras[0] 
</span><span class="lines">@@ -10114,35 +8250,19 @@
</span><span class="cx"> PASS setStartAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 7 document 
+PASS setStartAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 8 detachedDiv 
+PASS setStartAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 17 comment 
</span><del>-FAIL setStartAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 18 detachedComment 
+PASS setStartAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 0 paras[0] 
</span><span class="lines">@@ -10152,35 +8272,19 @@
</span><span class="cx"> PASS setStartAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 7 document 
+PASS setStartAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 8 detachedDiv 
+PASS setStartAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 17 comment 
</span><del>-FAIL setStartAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 18 detachedComment 
+PASS setStartAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 0 paras[0] 
</span><span class="lines">@@ -10190,35 +8294,19 @@
</span><span class="cx"> PASS setStartAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 7 document 
+PASS setStartAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 8 detachedDiv 
+PASS setStartAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 17 comment 
</span><del>-FAIL setStartAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 18 detachedComment 
+PASS setStartAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 0 paras[0] 
</span><span class="lines">@@ -10228,35 +8316,19 @@
</span><span class="cx"> PASS setStartAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 7 document 
+PASS setStartAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 8 detachedDiv 
+PASS setStartAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 17 comment 
</span><del>-FAIL setStartAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 18 detachedComment 
+PASS setStartAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 0 paras[0] 
</span><span class="lines">@@ -10266,35 +8338,19 @@
</span><span class="cx"> PASS setStartAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 7 document 
+PASS setStartAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 8 detachedDiv 
+PASS setStartAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 17 comment 
</span><del>-FAIL setStartAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 18 detachedComment 
+PASS setStartAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 36 [docfrag, 0, docfrag, 0], node 0 paras[0] 
</span><span class="lines">@@ -10304,35 +8360,19 @@
</span><span class="cx"> PASS setStartAfter() with range 36 [docfrag, 0, docfrag, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 36 [docfrag, 0, docfrag, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 36 [docfrag, 0, docfrag, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 36 [docfrag, 0, docfrag, 0], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 36 [docfrag, 0, docfrag, 0], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 36 [docfrag, 0, docfrag, 0], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 36 [docfrag, 0, docfrag, 0], node 7 document 
+PASS setStartAfter() with range 36 [docfrag, 0, docfrag, 0], node 8 detachedDiv 
+PASS setStartAfter() with range 36 [docfrag, 0, docfrag, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 36 [docfrag, 0, docfrag, 0], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 36 [docfrag, 0, docfrag, 0], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 36 [docfrag, 0, docfrag, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 36 [docfrag, 0, docfrag, 0], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 36 [docfrag, 0, docfrag, 0], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 36 [docfrag, 0, docfrag, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 36 [docfrag, 0, docfrag, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 36 [docfrag, 0, docfrag, 0], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 36 [docfrag, 0, docfrag, 0], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 36 [docfrag, 0, docfrag, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 36 [docfrag, 0, docfrag, 0], node 17 comment 
</span><del>-FAIL setStartAfter() with range 36 [docfrag, 0, docfrag, 0], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 36 [docfrag, 0, docfrag, 0], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 36 [docfrag, 0, docfrag, 0], node 18 detachedComment 
+PASS setStartAfter() with range 36 [docfrag, 0, docfrag, 0], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 36 [docfrag, 0, docfrag, 0], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 36 [docfrag, 0, docfrag, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setStartAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 0 paras[0] 
</span><span class="lines">@@ -10342,35 +8382,19 @@
</span><span class="cx"> PASS setStartAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setStartAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 5 detachedPara1 
</span><span class="cx"> PASS setStartAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 6 detachedPara1.firstChild 
</span><del>-FAIL setStartAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 7 document assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 8 detachedDiv assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 9 foreignDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 7 document 
+PASS setStartAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 8 detachedDiv 
+PASS setStartAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 9 foreignDoc 
</ins><span class="cx"> PASS setStartAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 10 foreignPara2 
</span><del>-FAIL setStartAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 11 xmlDoc assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 11 xmlDoc 
</ins><span class="cx"> PASS setStartAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 12 xmlElement 
</span><del>-FAIL setStartAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 13 detachedTextNode assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 13 detachedTextNode 
</ins><span class="cx"> PASS setStartAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 14 foreignTextNode 
</span><span class="cx"> PASS setStartAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 15 processingInstruction 
</span><del>-FAIL setStartAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 16 detachedProcessingInstruction assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setStartAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 17 comment 
</span><del>-FAIL setStartAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 18 detachedComment assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setStartAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 19 docfrag assert_throws: setStartAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setStartAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setStartAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 18 detachedComment 
+PASS setStartAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 19 docfrag 
</ins><span class="cx"> PASS setStartAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 20 doctype 
</span><span class="cx"> PASS setStartAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 0 paras[0] 
</span><span class="lines">@@ -10380,35 +8404,19 @@
</span><span class="cx"> PASS setEndBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 7 document 
+PASS setEndBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 8 detachedDiv 
+PASS setEndBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 17 comment 
</span><del>-FAIL setEndBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 18 detachedComment 
+PASS setEndBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 0 paras[0] 
</span><span class="lines">@@ -10418,35 +8426,19 @@
</span><span class="cx"> PASS setEndBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 7 document 
+PASS setEndBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 8 detachedDiv 
+PASS setEndBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 17 comment 
</span><del>-FAIL setEndBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 18 detachedComment 
+PASS setEndBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 0 paras[0] 
</span><span class="lines">@@ -10456,35 +8448,19 @@
</span><span class="cx"> PASS setEndBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 7 document 
+PASS setEndBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 8 detachedDiv 
+PASS setEndBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 17 comment 
</span><del>-FAIL setEndBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 18 detachedComment 
+PASS setEndBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 0 paras[0] 
</span><span class="lines">@@ -10494,35 +8470,19 @@
</span><span class="cx"> PASS setEndBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 7 document 
+PASS setEndBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 8 detachedDiv 
+PASS setEndBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 17 comment 
</span><del>-FAIL setEndBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 18 detachedComment 
+PASS setEndBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 0 paras[0] 
</span><span class="lines">@@ -10532,35 +8492,19 @@
</span><span class="cx"> PASS setEndBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 7 document 
+PASS setEndBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 8 detachedDiv 
+PASS setEndBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 17 comment 
</span><del>-FAIL setEndBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 18 detachedComment 
+PASS setEndBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 0 paras[0] 
</span><span class="lines">@@ -10570,35 +8514,19 @@
</span><span class="cx"> PASS setEndBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 7 document 
+PASS setEndBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 8 detachedDiv 
+PASS setEndBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 17 comment 
</span><del>-FAIL setEndBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 18 detachedComment 
+PASS setEndBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 0 paras[0] 
</span><span class="lines">@@ -10608,35 +8536,19 @@
</span><span class="cx"> PASS setEndBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 7 document 
+PASS setEndBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 8 detachedDiv 
+PASS setEndBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 17 comment 
</span><del>-FAIL setEndBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 18 detachedComment 
+PASS setEndBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 0 paras[0] 
</span><span class="lines">@@ -10646,35 +8558,19 @@
</span><span class="cx"> PASS setEndBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 7 document 
+PASS setEndBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 8 detachedDiv 
+PASS setEndBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 17 comment 
</span><del>-FAIL setEndBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 18 detachedComment 
+PASS setEndBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 0 paras[0] 
</span><span class="lines">@@ -10684,35 +8580,19 @@
</span><span class="cx"> PASS setEndBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 7 document 
+PASS setEndBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 8 detachedDiv 
+PASS setEndBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 17 comment 
</span><del>-FAIL setEndBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 18 detachedComment 
+PASS setEndBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 0 paras[0] 
</span><span class="lines">@@ -10722,35 +8602,19 @@
</span><span class="cx"> PASS setEndBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 7 document 
+PASS setEndBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 8 detachedDiv 
+PASS setEndBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 17 comment 
</span><del>-FAIL setEndBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 18 detachedComment 
+PASS setEndBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 0 paras[0] 
</span><span class="lines">@@ -10760,35 +8624,19 @@
</span><span class="cx"> PASS setEndBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 7 document 
+PASS setEndBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 8 detachedDiv 
+PASS setEndBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 17 comment 
</span><del>-FAIL setEndBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 18 detachedComment 
+PASS setEndBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 10 [document.documentElement, 0, document.documentElement, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 0 paras[0] 
</span><span class="lines">@@ -10798,35 +8646,19 @@
</span><span class="cx"> PASS setEndBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 7 document 
+PASS setEndBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 8 detachedDiv 
+PASS setEndBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 17 comment 
</span><del>-FAIL setEndBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 18 detachedComment 
+PASS setEndBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 11 [document.documentElement, 0, document.documentElement, 2], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 0 paras[0] 
</span><span class="lines">@@ -10836,35 +8668,19 @@
</span><span class="cx"> PASS setEndBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 7 document 
+PASS setEndBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 8 detachedDiv 
+PASS setEndBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 17 comment 
</span><del>-FAIL setEndBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 18 detachedComment 
+PASS setEndBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 12 [document.documentElement, 1, document.documentElement, 2], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 13 [document.head, 1, document.head, 1], node 0 paras[0] 
</span><span class="lines">@@ -10874,35 +8690,19 @@
</span><span class="cx"> PASS setEndBefore() with range 13 [document.head, 1, document.head, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 13 [document.head, 1, document.head, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 13 [document.head, 1, document.head, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 13 [document.head, 1, document.head, 1], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 13 [document.head, 1, document.head, 1], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 13 [document.head, 1, document.head, 1], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 13 [document.head, 1, document.head, 1], node 7 document 
+PASS setEndBefore() with range 13 [document.head, 1, document.head, 1], node 8 detachedDiv 
+PASS setEndBefore() with range 13 [document.head, 1, document.head, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 13 [document.head, 1, document.head, 1], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 13 [document.head, 1, document.head, 1], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 13 [document.head, 1, document.head, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 13 [document.head, 1, document.head, 1], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 13 [document.head, 1, document.head, 1], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 13 [document.head, 1, document.head, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 13 [document.head, 1, document.head, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 13 [document.head, 1, document.head, 1], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 13 [document.head, 1, document.head, 1], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 13 [document.head, 1, document.head, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 13 [document.head, 1, document.head, 1], node 17 comment 
</span><del>-FAIL setEndBefore() with range 13 [document.head, 1, document.head, 1], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 13 [document.head, 1, document.head, 1], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 13 [document.head, 1, document.head, 1], node 18 detachedComment 
+PASS setEndBefore() with range 13 [document.head, 1, document.head, 1], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 13 [document.head, 1, document.head, 1], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 13 [document.head, 1, document.head, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 14 [document.body, 4, document.body, 5], node 0 paras[0] 
</span><span class="lines">@@ -10912,35 +8712,19 @@
</span><span class="cx"> PASS setEndBefore() with range 14 [document.body, 4, document.body, 5], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 14 [document.body, 4, document.body, 5], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 14 [document.body, 4, document.body, 5], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 14 [document.body, 4, document.body, 5], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 14 [document.body, 4, document.body, 5], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 14 [document.body, 4, document.body, 5], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 14 [document.body, 4, document.body, 5], node 7 document 
+PASS setEndBefore() with range 14 [document.body, 4, document.body, 5], node 8 detachedDiv 
+PASS setEndBefore() with range 14 [document.body, 4, document.body, 5], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 14 [document.body, 4, document.body, 5], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 14 [document.body, 4, document.body, 5], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 14 [document.body, 4, document.body, 5], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 14 [document.body, 4, document.body, 5], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 14 [document.body, 4, document.body, 5], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 14 [document.body, 4, document.body, 5], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 14 [document.body, 4, document.body, 5], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 14 [document.body, 4, document.body, 5], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 14 [document.body, 4, document.body, 5], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 14 [document.body, 4, document.body, 5], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 14 [document.body, 4, document.body, 5], node 17 comment 
</span><del>-FAIL setEndBefore() with range 14 [document.body, 4, document.body, 5], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 14 [document.body, 4, document.body, 5], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 14 [document.body, 4, document.body, 5], node 18 detachedComment 
+PASS setEndBefore() with range 14 [document.body, 4, document.body, 5], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 14 [document.body, 4, document.body, 5], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 14 [document.body, 4, document.body, 5], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 0 paras[0] 
</span><span class="lines">@@ -10950,35 +8734,19 @@
</span><span class="cx"> PASS setEndBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 7 document 
+PASS setEndBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 8 detachedDiv 
+PASS setEndBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 17 comment 
</span><del>-FAIL setEndBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 18 detachedComment 
+PASS setEndBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 16 [paras[0], 0, paras[0], 1], node 0 paras[0] 
</span><span class="lines">@@ -10988,35 +8756,19 @@
</span><span class="cx"> PASS setEndBefore() with range 16 [paras[0], 0, paras[0], 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 16 [paras[0], 0, paras[0], 1], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 16 [paras[0], 0, paras[0], 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 16 [paras[0], 0, paras[0], 1], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 16 [paras[0], 0, paras[0], 1], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 16 [paras[0], 0, paras[0], 1], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 16 [paras[0], 0, paras[0], 1], node 7 document 
+PASS setEndBefore() with range 16 [paras[0], 0, paras[0], 1], node 8 detachedDiv 
+PASS setEndBefore() with range 16 [paras[0], 0, paras[0], 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 16 [paras[0], 0, paras[0], 1], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 16 [paras[0], 0, paras[0], 1], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 16 [paras[0], 0, paras[0], 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 16 [paras[0], 0, paras[0], 1], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 16 [paras[0], 0, paras[0], 1], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 16 [paras[0], 0, paras[0], 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 16 [paras[0], 0, paras[0], 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 16 [paras[0], 0, paras[0], 1], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 16 [paras[0], 0, paras[0], 1], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 16 [paras[0], 0, paras[0], 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 16 [paras[0], 0, paras[0], 1], node 17 comment 
</span><del>-FAIL setEndBefore() with range 16 [paras[0], 0, paras[0], 1], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 16 [paras[0], 0, paras[0], 1], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 16 [paras[0], 0, paras[0], 1], node 18 detachedComment 
+PASS setEndBefore() with range 16 [paras[0], 0, paras[0], 1], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 16 [paras[0], 0, paras[0], 1], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 16 [paras[0], 0, paras[0], 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 0 paras[0] 
</span><span class="lines">@@ -11026,35 +8778,19 @@
</span><span class="cx"> PASS setEndBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 7 document 
+PASS setEndBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 8 detachedDiv 
+PASS setEndBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 17 comment 
</span><del>-FAIL setEndBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 18 detachedComment 
+PASS setEndBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 17 [detachedPara1, 0, detachedPara1, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 0 paras[0] 
</span><span class="lines">@@ -11064,35 +8800,19 @@
</span><span class="cx"> PASS setEndBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 7 document 
+PASS setEndBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 8 detachedDiv 
+PASS setEndBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 17 comment 
</span><del>-FAIL setEndBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 18 detachedComment 
+PASS setEndBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 0 paras[0] 
</span><span class="lines">@@ -11102,35 +8822,19 @@
</span><span class="cx"> PASS setEndBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 7 document 
+PASS setEndBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 8 detachedDiv 
+PASS setEndBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 17 comment 
</span><del>-FAIL setEndBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 18 detachedComment 
+PASS setEndBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 0 paras[0] 
</span><span class="lines">@@ -11140,35 +8844,19 @@
</span><span class="cx"> PASS setEndBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 7 document 
+PASS setEndBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 8 detachedDiv 
+PASS setEndBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 17 comment 
</span><del>-FAIL setEndBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 18 detachedComment 
+PASS setEndBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 0 paras[0] 
</span><span class="lines">@@ -11178,35 +8866,19 @@
</span><span class="cx"> PASS setEndBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 7 document 
+PASS setEndBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 8 detachedDiv 
+PASS setEndBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 17 comment 
</span><del>-FAIL setEndBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 18 detachedComment 
+PASS setEndBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 22 [testDiv, 2, paras[4], 1], node 0 paras[0] 
</span><span class="lines">@@ -11216,35 +8888,19 @@
</span><span class="cx"> PASS setEndBefore() with range 22 [testDiv, 2, paras[4], 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 22 [testDiv, 2, paras[4], 1], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 22 [testDiv, 2, paras[4], 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 22 [testDiv, 2, paras[4], 1], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 22 [testDiv, 2, paras[4], 1], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 22 [testDiv, 2, paras[4], 1], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 22 [testDiv, 2, paras[4], 1], node 7 document 
+PASS setEndBefore() with range 22 [testDiv, 2, paras[4], 1], node 8 detachedDiv 
+PASS setEndBefore() with range 22 [testDiv, 2, paras[4], 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 22 [testDiv, 2, paras[4], 1], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 22 [testDiv, 2, paras[4], 1], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 22 [testDiv, 2, paras[4], 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 22 [testDiv, 2, paras[4], 1], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 22 [testDiv, 2, paras[4], 1], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 22 [testDiv, 2, paras[4], 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 22 [testDiv, 2, paras[4], 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 22 [testDiv, 2, paras[4], 1], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 22 [testDiv, 2, paras[4], 1], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 22 [testDiv, 2, paras[4], 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 22 [testDiv, 2, paras[4], 1], node 17 comment 
</span><del>-FAIL setEndBefore() with range 22 [testDiv, 2, paras[4], 1], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 22 [testDiv, 2, paras[4], 1], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 22 [testDiv, 2, paras[4], 1], node 18 detachedComment 
+PASS setEndBefore() with range 22 [testDiv, 2, paras[4], 1], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 22 [testDiv, 2, paras[4], 1], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 22 [testDiv, 2, paras[4], 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 23 [document, 0, document, 1], node 0 paras[0] 
</span><span class="lines">@@ -11254,35 +8910,19 @@
</span><span class="cx"> PASS setEndBefore() with range 23 [document, 0, document, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 23 [document, 0, document, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 23 [document, 0, document, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 23 [document, 0, document, 1], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 23 [document, 0, document, 1], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 23 [document, 0, document, 1], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 23 [document, 0, document, 1], node 7 document 
+PASS setEndBefore() with range 23 [document, 0, document, 1], node 8 detachedDiv 
+PASS setEndBefore() with range 23 [document, 0, document, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 23 [document, 0, document, 1], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 23 [document, 0, document, 1], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 23 [document, 0, document, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 23 [document, 0, document, 1], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 23 [document, 0, document, 1], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 23 [document, 0, document, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 23 [document, 0, document, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 23 [document, 0, document, 1], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 23 [document, 0, document, 1], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 23 [document, 0, document, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 23 [document, 0, document, 1], node 17 comment 
</span><del>-FAIL setEndBefore() with range 23 [document, 0, document, 1], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 23 [document, 0, document, 1], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 23 [document, 0, document, 1], node 18 detachedComment 
+PASS setEndBefore() with range 23 [document, 0, document, 1], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 23 [document, 0, document, 1], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 23 [document, 0, document, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 24 [document, 0, document, 2], node 0 paras[0] 
</span><span class="lines">@@ -11292,35 +8932,19 @@
</span><span class="cx"> PASS setEndBefore() with range 24 [document, 0, document, 2], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 24 [document, 0, document, 2], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 24 [document, 0, document, 2], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 24 [document, 0, document, 2], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 24 [document, 0, document, 2], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 24 [document, 0, document, 2], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 24 [document, 0, document, 2], node 7 document 
+PASS setEndBefore() with range 24 [document, 0, document, 2], node 8 detachedDiv 
+PASS setEndBefore() with range 24 [document, 0, document, 2], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 24 [document, 0, document, 2], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 24 [document, 0, document, 2], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 24 [document, 0, document, 2], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 24 [document, 0, document, 2], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 24 [document, 0, document, 2], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 24 [document, 0, document, 2], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 24 [document, 0, document, 2], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 24 [document, 0, document, 2], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 24 [document, 0, document, 2], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 24 [document, 0, document, 2], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 24 [document, 0, document, 2], node 17 comment 
</span><del>-FAIL setEndBefore() with range 24 [document, 0, document, 2], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 24 [document, 0, document, 2], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 24 [document, 0, document, 2], node 18 detachedComment 
+PASS setEndBefore() with range 24 [document, 0, document, 2], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 24 [document, 0, document, 2], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 24 [document, 0, document, 2], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 25 [comment, 2, comment, 3], node 0 paras[0] 
</span><span class="lines">@@ -11330,35 +8954,19 @@
</span><span class="cx"> PASS setEndBefore() with range 25 [comment, 2, comment, 3], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 25 [comment, 2, comment, 3], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 25 [comment, 2, comment, 3], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 25 [comment, 2, comment, 3], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 25 [comment, 2, comment, 3], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 25 [comment, 2, comment, 3], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 25 [comment, 2, comment, 3], node 7 document 
+PASS setEndBefore() with range 25 [comment, 2, comment, 3], node 8 detachedDiv 
+PASS setEndBefore() with range 25 [comment, 2, comment, 3], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 25 [comment, 2, comment, 3], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 25 [comment, 2, comment, 3], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 25 [comment, 2, comment, 3], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 25 [comment, 2, comment, 3], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 25 [comment, 2, comment, 3], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 25 [comment, 2, comment, 3], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 25 [comment, 2, comment, 3], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 25 [comment, 2, comment, 3], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 25 [comment, 2, comment, 3], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 25 [comment, 2, comment, 3], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 25 [comment, 2, comment, 3], node 17 comment 
</span><del>-FAIL setEndBefore() with range 25 [comment, 2, comment, 3], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 25 [comment, 2, comment, 3], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 25 [comment, 2, comment, 3], node 18 detachedComment 
+PASS setEndBefore() with range 25 [comment, 2, comment, 3], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 25 [comment, 2, comment, 3], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 25 [comment, 2, comment, 3], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 26 [testDiv, 0, comment, 5], node 0 paras[0] 
</span><span class="lines">@@ -11368,35 +8976,19 @@
</span><span class="cx"> PASS setEndBefore() with range 26 [testDiv, 0, comment, 5], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 26 [testDiv, 0, comment, 5], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 26 [testDiv, 0, comment, 5], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 26 [testDiv, 0, comment, 5], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 26 [testDiv, 0, comment, 5], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 26 [testDiv, 0, comment, 5], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 26 [testDiv, 0, comment, 5], node 7 document 
+PASS setEndBefore() with range 26 [testDiv, 0, comment, 5], node 8 detachedDiv 
+PASS setEndBefore() with range 26 [testDiv, 0, comment, 5], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 26 [testDiv, 0, comment, 5], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 26 [testDiv, 0, comment, 5], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 26 [testDiv, 0, comment, 5], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 26 [testDiv, 0, comment, 5], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 26 [testDiv, 0, comment, 5], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 26 [testDiv, 0, comment, 5], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 26 [testDiv, 0, comment, 5], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 26 [testDiv, 0, comment, 5], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 26 [testDiv, 0, comment, 5], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 26 [testDiv, 0, comment, 5], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 26 [testDiv, 0, comment, 5], node 17 comment 
</span><del>-FAIL setEndBefore() with range 26 [testDiv, 0, comment, 5], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 26 [testDiv, 0, comment, 5], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 26 [testDiv, 0, comment, 5], node 18 detachedComment 
+PASS setEndBefore() with range 26 [testDiv, 0, comment, 5], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 26 [testDiv, 0, comment, 5], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 26 [testDiv, 0, comment, 5], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 0 paras[0] 
</span><span class="lines">@@ -11406,35 +8998,19 @@
</span><span class="cx"> PASS setEndBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 7 document 
+PASS setEndBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 8 detachedDiv 
+PASS setEndBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 17 comment 
</span><del>-FAIL setEndBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 18 detachedComment 
+PASS setEndBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 27 [foreignDoc, 1, foreignComment, 2], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 0 paras[0] 
</span><span class="lines">@@ -11444,35 +9020,19 @@
</span><span class="cx"> PASS setEndBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 7 document 
+PASS setEndBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 8 detachedDiv 
+PASS setEndBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 17 comment 
</span><del>-FAIL setEndBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 18 detachedComment 
+PASS setEndBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 0 paras[0] 
</span><span class="lines">@@ -11482,35 +9042,19 @@
</span><span class="cx"> PASS setEndBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 7 document 
+PASS setEndBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 8 detachedDiv 
+PASS setEndBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 17 comment 
</span><del>-FAIL setEndBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 18 detachedComment 
+PASS setEndBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 29 [xmlDoc, 1, xmlComment, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 0 paras[0] 
</span><span class="lines">@@ -11520,35 +9064,19 @@
</span><span class="cx"> PASS setEndBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 7 document 
+PASS setEndBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 8 detachedDiv 
+PASS setEndBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 17 comment 
</span><del>-FAIL setEndBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 18 detachedComment 
+PASS setEndBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 0 paras[0] 
</span><span class="lines">@@ -11558,35 +9086,19 @@
</span><span class="cx"> PASS setEndBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 7 document 
+PASS setEndBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 8 detachedDiv 
+PASS setEndBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 17 comment 
</span><del>-FAIL setEndBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 18 detachedComment 
+PASS setEndBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 0 paras[0] 
</span><span class="lines">@@ -11596,35 +9108,19 @@
</span><span class="cx"> PASS setEndBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 7 document 
+PASS setEndBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 8 detachedDiv 
+PASS setEndBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 17 comment 
</span><del>-FAIL setEndBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 18 detachedComment 
+PASS setEndBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 0 paras[0] 
</span><span class="lines">@@ -11634,35 +9130,19 @@
</span><span class="cx"> PASS setEndBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 7 document 
+PASS setEndBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 8 detachedDiv 
+PASS setEndBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 17 comment 
</span><del>-FAIL setEndBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 18 detachedComment 
+PASS setEndBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 33 [detachedComment, 3, detachedComment, 4], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 0 paras[0] 
</span><span class="lines">@@ -11672,35 +9152,19 @@
</span><span class="cx"> PASS setEndBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 7 document 
+PASS setEndBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 8 detachedDiv 
+PASS setEndBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 17 comment 
</span><del>-FAIL setEndBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 18 detachedComment 
+PASS setEndBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 0 paras[0] 
</span><span class="lines">@@ -11710,35 +9174,19 @@
</span><span class="cx"> PASS setEndBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 7 document 
+PASS setEndBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 8 detachedDiv 
+PASS setEndBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 17 comment 
</span><del>-FAIL setEndBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 18 detachedComment 
+PASS setEndBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 36 [docfrag, 0, docfrag, 0], node 0 paras[0] 
</span><span class="lines">@@ -11748,35 +9196,19 @@
</span><span class="cx"> PASS setEndBefore() with range 36 [docfrag, 0, docfrag, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 36 [docfrag, 0, docfrag, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 36 [docfrag, 0, docfrag, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 36 [docfrag, 0, docfrag, 0], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 36 [docfrag, 0, docfrag, 0], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 36 [docfrag, 0, docfrag, 0], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 36 [docfrag, 0, docfrag, 0], node 7 document 
+PASS setEndBefore() with range 36 [docfrag, 0, docfrag, 0], node 8 detachedDiv 
+PASS setEndBefore() with range 36 [docfrag, 0, docfrag, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 36 [docfrag, 0, docfrag, 0], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 36 [docfrag, 0, docfrag, 0], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 36 [docfrag, 0, docfrag, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 36 [docfrag, 0, docfrag, 0], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 36 [docfrag, 0, docfrag, 0], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 36 [docfrag, 0, docfrag, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 36 [docfrag, 0, docfrag, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 36 [docfrag, 0, docfrag, 0], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 36 [docfrag, 0, docfrag, 0], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 36 [docfrag, 0, docfrag, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 36 [docfrag, 0, docfrag, 0], node 17 comment 
</span><del>-FAIL setEndBefore() with range 36 [docfrag, 0, docfrag, 0], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 36 [docfrag, 0, docfrag, 0], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 36 [docfrag, 0, docfrag, 0], node 18 detachedComment 
+PASS setEndBefore() with range 36 [docfrag, 0, docfrag, 0], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 36 [docfrag, 0, docfrag, 0], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 36 [docfrag, 0, docfrag, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 0 paras[0] 
</span><span class="lines">@@ -11786,35 +9218,19 @@
</span><span class="cx"> PASS setEndBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 5 detachedPara1 
</span><span class="cx"> PASS setEndBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 7 document assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 8 detachedDiv assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 9 foreignDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 7 document 
+PASS setEndBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 8 detachedDiv 
+PASS setEndBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 10 foreignPara2 
</span><del>-FAIL setEndBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 11 xmlDoc assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 12 xmlElement 
</span><del>-FAIL setEndBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 13 detachedTextNode assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 15 processingInstruction 
</span><del>-FAIL setEndBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 16 detachedProcessingInstruction assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 17 comment 
</span><del>-FAIL setEndBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 18 detachedComment assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 19 docfrag assert_throws: setEndBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndBefore(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 18 detachedComment 
+PASS setEndBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 19 docfrag 
</ins><span class="cx"> PASS setEndBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 20 doctype 
</span><span class="cx"> PASS setEndBefore() with range 37 [processingInstruction, 0, processingInstruction, 4], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 0 paras[0] 
</span><span class="lines">@@ -11824,35 +9240,19 @@
</span><span class="cx"> PASS setEndAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 7 document 
+PASS setEndAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 8 detachedDiv 
+PASS setEndAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 17 comment 
</span><del>-FAIL setEndAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 18 detachedComment 
+PASS setEndAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 0 paras[0] 
</span><span class="lines">@@ -11862,35 +9262,19 @@
</span><span class="cx"> PASS setEndAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 7 document 
+PASS setEndAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 8 detachedDiv 
+PASS setEndAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 17 comment 
</span><del>-FAIL setEndAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 18 detachedComment 
+PASS setEndAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 0 paras[0] 
</span><span class="lines">@@ -11900,35 +9284,19 @@
</span><span class="cx"> PASS setEndAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 7 document 
+PASS setEndAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 8 detachedDiv 
+PASS setEndAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 17 comment 
</span><del>-FAIL setEndAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 18 detachedComment 
+PASS setEndAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 0 paras[0] 
</span><span class="lines">@@ -11938,35 +9306,19 @@
</span><span class="cx"> PASS setEndAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 7 document 
+PASS setEndAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 8 detachedDiv 
+PASS setEndAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 17 comment 
</span><del>-FAIL setEndAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 18 detachedComment 
+PASS setEndAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 0 paras[0] 
</span><span class="lines">@@ -11976,35 +9328,19 @@
</span><span class="cx"> PASS setEndAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 7 document 
+PASS setEndAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 8 detachedDiv 
+PASS setEndAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 17 comment 
</span><del>-FAIL setEndAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 18 detachedComment 
+PASS setEndAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 0 paras[0] 
</span><span class="lines">@@ -12014,35 +9350,19 @@
</span><span class="cx"> PASS setEndAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 7 document 
+PASS setEndAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 8 detachedDiv 
+PASS setEndAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 17 comment 
</span><del>-FAIL setEndAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 18 detachedComment 
+PASS setEndAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 0 paras[0] 
</span><span class="lines">@@ -12052,35 +9372,19 @@
</span><span class="cx"> PASS setEndAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 7 document 
+PASS setEndAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 8 detachedDiv 
+PASS setEndAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 17 comment 
</span><del>-FAIL setEndAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 18 detachedComment 
+PASS setEndAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 0 paras[0] 
</span><span class="lines">@@ -12090,35 +9394,19 @@
</span><span class="cx"> PASS setEndAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 7 document 
+PASS setEndAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 8 detachedDiv 
+PASS setEndAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 17 comment 
</span><del>-FAIL setEndAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 18 detachedComment 
+PASS setEndAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 0 paras[0] 
</span><span class="lines">@@ -12128,35 +9416,19 @@
</span><span class="cx"> PASS setEndAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 7 document 
+PASS setEndAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 8 detachedDiv 
+PASS setEndAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 17 comment 
</span><del>-FAIL setEndAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 18 detachedComment 
+PASS setEndAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 0 paras[0] 
</span><span class="lines">@@ -12166,35 +9438,19 @@
</span><span class="cx"> PASS setEndAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 7 document 
+PASS setEndAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 8 detachedDiv 
+PASS setEndAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 17 comment 
</span><del>-FAIL setEndAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 18 detachedComment 
+PASS setEndAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 0 paras[0] 
</span><span class="lines">@@ -12204,35 +9460,19 @@
</span><span class="cx"> PASS setEndAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 7 document 
+PASS setEndAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 8 detachedDiv 
+PASS setEndAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 17 comment 
</span><del>-FAIL setEndAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 18 detachedComment 
+PASS setEndAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 10 [document.documentElement, 0, document.documentElement, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 0 paras[0] 
</span><span class="lines">@@ -12242,35 +9482,19 @@
</span><span class="cx"> PASS setEndAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 7 document 
+PASS setEndAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 8 detachedDiv 
+PASS setEndAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 17 comment 
</span><del>-FAIL setEndAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 18 detachedComment 
+PASS setEndAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 11 [document.documentElement, 0, document.documentElement, 2], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 0 paras[0] 
</span><span class="lines">@@ -12280,35 +9504,19 @@
</span><span class="cx"> PASS setEndAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 7 document 
+PASS setEndAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 8 detachedDiv 
+PASS setEndAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 17 comment 
</span><del>-FAIL setEndAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 18 detachedComment 
+PASS setEndAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 12 [document.documentElement, 1, document.documentElement, 2], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 13 [document.head, 1, document.head, 1], node 0 paras[0] 
</span><span class="lines">@@ -12318,35 +9526,19 @@
</span><span class="cx"> PASS setEndAfter() with range 13 [document.head, 1, document.head, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 13 [document.head, 1, document.head, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 13 [document.head, 1, document.head, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 13 [document.head, 1, document.head, 1], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 13 [document.head, 1, document.head, 1], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 13 [document.head, 1, document.head, 1], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 13 [document.head, 1, document.head, 1], node 7 document 
+PASS setEndAfter() with range 13 [document.head, 1, document.head, 1], node 8 detachedDiv 
+PASS setEndAfter() with range 13 [document.head, 1, document.head, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 13 [document.head, 1, document.head, 1], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 13 [document.head, 1, document.head, 1], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 13 [document.head, 1, document.head, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 13 [document.head, 1, document.head, 1], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 13 [document.head, 1, document.head, 1], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 13 [document.head, 1, document.head, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 13 [document.head, 1, document.head, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 13 [document.head, 1, document.head, 1], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 13 [document.head, 1, document.head, 1], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 13 [document.head, 1, document.head, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 13 [document.head, 1, document.head, 1], node 17 comment 
</span><del>-FAIL setEndAfter() with range 13 [document.head, 1, document.head, 1], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 13 [document.head, 1, document.head, 1], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 13 [document.head, 1, document.head, 1], node 18 detachedComment 
+PASS setEndAfter() with range 13 [document.head, 1, document.head, 1], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 13 [document.head, 1, document.head, 1], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 13 [document.head, 1, document.head, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 14 [document.body, 4, document.body, 5], node 0 paras[0] 
</span><span class="lines">@@ -12356,35 +9548,19 @@
</span><span class="cx"> PASS setEndAfter() with range 14 [document.body, 4, document.body, 5], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 14 [document.body, 4, document.body, 5], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 14 [document.body, 4, document.body, 5], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 14 [document.body, 4, document.body, 5], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 14 [document.body, 4, document.body, 5], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 14 [document.body, 4, document.body, 5], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 14 [document.body, 4, document.body, 5], node 7 document 
+PASS setEndAfter() with range 14 [document.body, 4, document.body, 5], node 8 detachedDiv 
+PASS setEndAfter() with range 14 [document.body, 4, document.body, 5], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 14 [document.body, 4, document.body, 5], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 14 [document.body, 4, document.body, 5], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 14 [document.body, 4, document.body, 5], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 14 [document.body, 4, document.body, 5], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 14 [document.body, 4, document.body, 5], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 14 [document.body, 4, document.body, 5], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 14 [document.body, 4, document.body, 5], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 14 [document.body, 4, document.body, 5], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 14 [document.body, 4, document.body, 5], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 14 [document.body, 4, document.body, 5], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 14 [document.body, 4, document.body, 5], node 17 comment 
</span><del>-FAIL setEndAfter() with range 14 [document.body, 4, document.body, 5], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 14 [document.body, 4, document.body, 5], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 14 [document.body, 4, document.body, 5], node 18 detachedComment 
+PASS setEndAfter() with range 14 [document.body, 4, document.body, 5], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 14 [document.body, 4, document.body, 5], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 14 [document.body, 4, document.body, 5], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 0 paras[0] 
</span><span class="lines">@@ -12394,35 +9570,19 @@
</span><span class="cx"> PASS setEndAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 7 document 
+PASS setEndAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 8 detachedDiv 
+PASS setEndAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 17 comment 
</span><del>-FAIL setEndAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 18 detachedComment 
+PASS setEndAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 16 [paras[0], 0, paras[0], 1], node 0 paras[0] 
</span><span class="lines">@@ -12432,35 +9592,19 @@
</span><span class="cx"> PASS setEndAfter() with range 16 [paras[0], 0, paras[0], 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 16 [paras[0], 0, paras[0], 1], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 16 [paras[0], 0, paras[0], 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 16 [paras[0], 0, paras[0], 1], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 16 [paras[0], 0, paras[0], 1], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 16 [paras[0], 0, paras[0], 1], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 16 [paras[0], 0, paras[0], 1], node 7 document 
+PASS setEndAfter() with range 16 [paras[0], 0, paras[0], 1], node 8 detachedDiv 
+PASS setEndAfter() with range 16 [paras[0], 0, paras[0], 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 16 [paras[0], 0, paras[0], 1], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 16 [paras[0], 0, paras[0], 1], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 16 [paras[0], 0, paras[0], 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 16 [paras[0], 0, paras[0], 1], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 16 [paras[0], 0, paras[0], 1], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 16 [paras[0], 0, paras[0], 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 16 [paras[0], 0, paras[0], 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 16 [paras[0], 0, paras[0], 1], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 16 [paras[0], 0, paras[0], 1], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 16 [paras[0], 0, paras[0], 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 16 [paras[0], 0, paras[0], 1], node 17 comment 
</span><del>-FAIL setEndAfter() with range 16 [paras[0], 0, paras[0], 1], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 16 [paras[0], 0, paras[0], 1], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 16 [paras[0], 0, paras[0], 1], node 18 detachedComment 
+PASS setEndAfter() with range 16 [paras[0], 0, paras[0], 1], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 16 [paras[0], 0, paras[0], 1], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 16 [paras[0], 0, paras[0], 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 0 paras[0] 
</span><span class="lines">@@ -12470,35 +9614,19 @@
</span><span class="cx"> PASS setEndAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 7 document 
+PASS setEndAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 8 detachedDiv 
+PASS setEndAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 17 comment 
</span><del>-FAIL setEndAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 18 detachedComment 
+PASS setEndAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 17 [detachedPara1, 0, detachedPara1, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 0 paras[0] 
</span><span class="lines">@@ -12508,35 +9636,19 @@
</span><span class="cx"> PASS setEndAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 7 document 
+PASS setEndAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 8 detachedDiv 
+PASS setEndAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 17 comment 
</span><del>-FAIL setEndAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 18 detachedComment 
+PASS setEndAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 0 paras[0] 
</span><span class="lines">@@ -12546,35 +9658,19 @@
</span><span class="cx"> PASS setEndAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 7 document 
+PASS setEndAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 8 detachedDiv 
+PASS setEndAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 17 comment 
</span><del>-FAIL setEndAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 18 detachedComment 
+PASS setEndAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 0 paras[0] 
</span><span class="lines">@@ -12584,35 +9680,19 @@
</span><span class="cx"> PASS setEndAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 7 document 
+PASS setEndAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 8 detachedDiv 
+PASS setEndAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 17 comment 
</span><del>-FAIL setEndAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 18 detachedComment 
+PASS setEndAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 20 [paras[0].firstChild, 3, paras[3], 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 0 paras[0] 
</span><span class="lines">@@ -12622,35 +9702,19 @@
</span><span class="cx"> PASS setEndAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 7 document 
+PASS setEndAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 8 detachedDiv 
+PASS setEndAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 17 comment 
</span><del>-FAIL setEndAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 18 detachedComment 
+PASS setEndAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 21 [paras[0], 0, paras[0].firstChild, 7], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 22 [testDiv, 2, paras[4], 1], node 0 paras[0] 
</span><span class="lines">@@ -12660,35 +9724,19 @@
</span><span class="cx"> PASS setEndAfter() with range 22 [testDiv, 2, paras[4], 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 22 [testDiv, 2, paras[4], 1], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 22 [testDiv, 2, paras[4], 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 22 [testDiv, 2, paras[4], 1], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 22 [testDiv, 2, paras[4], 1], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 22 [testDiv, 2, paras[4], 1], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 22 [testDiv, 2, paras[4], 1], node 7 document 
+PASS setEndAfter() with range 22 [testDiv, 2, paras[4], 1], node 8 detachedDiv 
+PASS setEndAfter() with range 22 [testDiv, 2, paras[4], 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 22 [testDiv, 2, paras[4], 1], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 22 [testDiv, 2, paras[4], 1], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 22 [testDiv, 2, paras[4], 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 22 [testDiv, 2, paras[4], 1], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 22 [testDiv, 2, paras[4], 1], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 22 [testDiv, 2, paras[4], 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 22 [testDiv, 2, paras[4], 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 22 [testDiv, 2, paras[4], 1], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 22 [testDiv, 2, paras[4], 1], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 22 [testDiv, 2, paras[4], 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 22 [testDiv, 2, paras[4], 1], node 17 comment 
</span><del>-FAIL setEndAfter() with range 22 [testDiv, 2, paras[4], 1], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 22 [testDiv, 2, paras[4], 1], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 22 [testDiv, 2, paras[4], 1], node 18 detachedComment 
+PASS setEndAfter() with range 22 [testDiv, 2, paras[4], 1], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 22 [testDiv, 2, paras[4], 1], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 22 [testDiv, 2, paras[4], 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 23 [document, 0, document, 1], node 0 paras[0] 
</span><span class="lines">@@ -12698,35 +9746,19 @@
</span><span class="cx"> PASS setEndAfter() with range 23 [document, 0, document, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 23 [document, 0, document, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 23 [document, 0, document, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 23 [document, 0, document, 1], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 23 [document, 0, document, 1], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 23 [document, 0, document, 1], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 23 [document, 0, document, 1], node 7 document 
+PASS setEndAfter() with range 23 [document, 0, document, 1], node 8 detachedDiv 
+PASS setEndAfter() with range 23 [document, 0, document, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 23 [document, 0, document, 1], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 23 [document, 0, document, 1], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 23 [document, 0, document, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 23 [document, 0, document, 1], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 23 [document, 0, document, 1], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 23 [document, 0, document, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 23 [document, 0, document, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 23 [document, 0, document, 1], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 23 [document, 0, document, 1], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 23 [document, 0, document, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 23 [document, 0, document, 1], node 17 comment 
</span><del>-FAIL setEndAfter() with range 23 [document, 0, document, 1], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 23 [document, 0, document, 1], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 23 [document, 0, document, 1], node 18 detachedComment 
+PASS setEndAfter() with range 23 [document, 0, document, 1], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 23 [document, 0, document, 1], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 23 [document, 0, document, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 24 [document, 0, document, 2], node 0 paras[0] 
</span><span class="lines">@@ -12736,35 +9768,19 @@
</span><span class="cx"> PASS setEndAfter() with range 24 [document, 0, document, 2], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 24 [document, 0, document, 2], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 24 [document, 0, document, 2], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 24 [document, 0, document, 2], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 24 [document, 0, document, 2], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 24 [document, 0, document, 2], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 24 [document, 0, document, 2], node 7 document 
+PASS setEndAfter() with range 24 [document, 0, document, 2], node 8 detachedDiv 
+PASS setEndAfter() with range 24 [document, 0, document, 2], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 24 [document, 0, document, 2], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 24 [document, 0, document, 2], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 24 [document, 0, document, 2], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 24 [document, 0, document, 2], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 24 [document, 0, document, 2], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 24 [document, 0, document, 2], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 24 [document, 0, document, 2], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 24 [document, 0, document, 2], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 24 [document, 0, document, 2], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 24 [document, 0, document, 2], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 24 [document, 0, document, 2], node 17 comment 
</span><del>-FAIL setEndAfter() with range 24 [document, 0, document, 2], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 24 [document, 0, document, 2], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 24 [document, 0, document, 2], node 18 detachedComment 
+PASS setEndAfter() with range 24 [document, 0, document, 2], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 24 [document, 0, document, 2], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 24 [document, 0, document, 2], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 25 [comment, 2, comment, 3], node 0 paras[0] 
</span><span class="lines">@@ -12774,35 +9790,19 @@
</span><span class="cx"> PASS setEndAfter() with range 25 [comment, 2, comment, 3], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 25 [comment, 2, comment, 3], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 25 [comment, 2, comment, 3], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 25 [comment, 2, comment, 3], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 25 [comment, 2, comment, 3], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 25 [comment, 2, comment, 3], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 25 [comment, 2, comment, 3], node 7 document 
+PASS setEndAfter() with range 25 [comment, 2, comment, 3], node 8 detachedDiv 
+PASS setEndAfter() with range 25 [comment, 2, comment, 3], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 25 [comment, 2, comment, 3], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 25 [comment, 2, comment, 3], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 25 [comment, 2, comment, 3], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 25 [comment, 2, comment, 3], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 25 [comment, 2, comment, 3], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 25 [comment, 2, comment, 3], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 25 [comment, 2, comment, 3], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 25 [comment, 2, comment, 3], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 25 [comment, 2, comment, 3], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 25 [comment, 2, comment, 3], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 25 [comment, 2, comment, 3], node 17 comment 
</span><del>-FAIL setEndAfter() with range 25 [comment, 2, comment, 3], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 25 [comment, 2, comment, 3], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 25 [comment, 2, comment, 3], node 18 detachedComment 
+PASS setEndAfter() with range 25 [comment, 2, comment, 3], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 25 [comment, 2, comment, 3], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 25 [comment, 2, comment, 3], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 26 [testDiv, 0, comment, 5], node 0 paras[0] 
</span><span class="lines">@@ -12812,35 +9812,19 @@
</span><span class="cx"> PASS setEndAfter() with range 26 [testDiv, 0, comment, 5], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 26 [testDiv, 0, comment, 5], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 26 [testDiv, 0, comment, 5], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 26 [testDiv, 0, comment, 5], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 26 [testDiv, 0, comment, 5], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 26 [testDiv, 0, comment, 5], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 26 [testDiv, 0, comment, 5], node 7 document 
+PASS setEndAfter() with range 26 [testDiv, 0, comment, 5], node 8 detachedDiv 
+PASS setEndAfter() with range 26 [testDiv, 0, comment, 5], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 26 [testDiv, 0, comment, 5], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 26 [testDiv, 0, comment, 5], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 26 [testDiv, 0, comment, 5], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 26 [testDiv, 0, comment, 5], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 26 [testDiv, 0, comment, 5], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 26 [testDiv, 0, comment, 5], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 26 [testDiv, 0, comment, 5], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 26 [testDiv, 0, comment, 5], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 26 [testDiv, 0, comment, 5], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 26 [testDiv, 0, comment, 5], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 26 [testDiv, 0, comment, 5], node 17 comment 
</span><del>-FAIL setEndAfter() with range 26 [testDiv, 0, comment, 5], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 26 [testDiv, 0, comment, 5], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 26 [testDiv, 0, comment, 5], node 18 detachedComment 
+PASS setEndAfter() with range 26 [testDiv, 0, comment, 5], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 26 [testDiv, 0, comment, 5], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 26 [testDiv, 0, comment, 5], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 0 paras[0] 
</span><span class="lines">@@ -12850,35 +9834,19 @@
</span><span class="cx"> PASS setEndAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 7 document 
+PASS setEndAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 8 detachedDiv 
+PASS setEndAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 17 comment 
</span><del>-FAIL setEndAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 18 detachedComment 
+PASS setEndAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 27 [foreignDoc, 1, foreignComment, 2], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 0 paras[0] 
</span><span class="lines">@@ -12888,35 +9856,19 @@
</span><span class="cx"> PASS setEndAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 7 document 
+PASS setEndAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 8 detachedDiv 
+PASS setEndAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 17 comment 
</span><del>-FAIL setEndAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 18 detachedComment 
+PASS setEndAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 0 paras[0] 
</span><span class="lines">@@ -12926,35 +9878,19 @@
</span><span class="cx"> PASS setEndAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 7 document 
+PASS setEndAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 8 detachedDiv 
+PASS setEndAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 17 comment 
</span><del>-FAIL setEndAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 18 detachedComment 
+PASS setEndAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 29 [xmlDoc, 1, xmlComment, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 0 paras[0] 
</span><span class="lines">@@ -12964,35 +9900,19 @@
</span><span class="cx"> PASS setEndAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 7 document 
+PASS setEndAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 8 detachedDiv 
+PASS setEndAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 17 comment 
</span><del>-FAIL setEndAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 18 detachedComment 
+PASS setEndAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 30 [detachedTextNode, 0, detachedTextNode, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 0 paras[0] 
</span><span class="lines">@@ -13002,35 +9922,19 @@
</span><span class="cx"> PASS setEndAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 7 document 
+PASS setEndAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 8 detachedDiv 
+PASS setEndAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 17 comment 
</span><del>-FAIL setEndAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 18 detachedComment 
+PASS setEndAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 0 paras[0] 
</span><span class="lines">@@ -13040,35 +9944,19 @@
</span><span class="cx"> PASS setEndAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 7 document 
+PASS setEndAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 8 detachedDiv 
+PASS setEndAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 17 comment 
</span><del>-FAIL setEndAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 18 detachedComment 
+PASS setEndAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 0 paras[0] 
</span><span class="lines">@@ -13078,35 +9966,19 @@
</span><span class="cx"> PASS setEndAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 7 document 
+PASS setEndAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 8 detachedDiv 
+PASS setEndAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 17 comment 
</span><del>-FAIL setEndAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 18 detachedComment 
+PASS setEndAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 33 [detachedComment, 3, detachedComment, 4], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 0 paras[0] 
</span><span class="lines">@@ -13116,35 +9988,19 @@
</span><span class="cx"> PASS setEndAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 7 document 
+PASS setEndAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 8 detachedDiv 
+PASS setEndAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 17 comment 
</span><del>-FAIL setEndAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 18 detachedComment 
+PASS setEndAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 0 paras[0] 
</span><span class="lines">@@ -13154,35 +10010,19 @@
</span><span class="cx"> PASS setEndAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 7 document 
+PASS setEndAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 8 detachedDiv 
+PASS setEndAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 17 comment 
</span><del>-FAIL setEndAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 18 detachedComment 
+PASS setEndAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 36 [docfrag, 0, docfrag, 0], node 0 paras[0] 
</span><span class="lines">@@ -13192,35 +10032,19 @@
</span><span class="cx"> PASS setEndAfter() with range 36 [docfrag, 0, docfrag, 0], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 36 [docfrag, 0, docfrag, 0], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 36 [docfrag, 0, docfrag, 0], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 36 [docfrag, 0, docfrag, 0], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 36 [docfrag, 0, docfrag, 0], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 36 [docfrag, 0, docfrag, 0], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 36 [docfrag, 0, docfrag, 0], node 7 document 
+PASS setEndAfter() with range 36 [docfrag, 0, docfrag, 0], node 8 detachedDiv 
+PASS setEndAfter() with range 36 [docfrag, 0, docfrag, 0], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 36 [docfrag, 0, docfrag, 0], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 36 [docfrag, 0, docfrag, 0], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 36 [docfrag, 0, docfrag, 0], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 36 [docfrag, 0, docfrag, 0], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 36 [docfrag, 0, docfrag, 0], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 36 [docfrag, 0, docfrag, 0], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 36 [docfrag, 0, docfrag, 0], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 36 [docfrag, 0, docfrag, 0], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 36 [docfrag, 0, docfrag, 0], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 36 [docfrag, 0, docfrag, 0], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 36 [docfrag, 0, docfrag, 0], node 17 comment 
</span><del>-FAIL setEndAfter() with range 36 [docfrag, 0, docfrag, 0], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 36 [docfrag, 0, docfrag, 0], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 36 [docfrag, 0, docfrag, 0], node 18 detachedComment 
+PASS setEndAfter() with range 36 [docfrag, 0, docfrag, 0], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 36 [docfrag, 0, docfrag, 0], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 36 [docfrag, 0, docfrag, 0], node 21 foreignDoctype 
</span><span class="cx"> PASS setEndAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 0 paras[0] 
</span><span class="lines">@@ -13230,35 +10054,19 @@
</span><span class="cx"> PASS setEndAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 4 foreignPara1.firstChild 
</span><span class="cx"> PASS setEndAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 5 detachedPara1 
</span><span class="cx"> PASS setEndAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 6 detachedPara1.firstChild 
</span><del>-FAIL setEndAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 7 document assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 8 detachedDiv assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 9 foreignDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 7 document 
+PASS setEndAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 8 detachedDiv 
+PASS setEndAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 9 foreignDoc 
</ins><span class="cx"> PASS setEndAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 10 foreignPara2 
</span><del>-FAIL setEndAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 11 xmlDoc assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 11 xmlDoc 
</ins><span class="cx"> PASS setEndAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 12 xmlElement 
</span><del>-FAIL setEndAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 13 detachedTextNode assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 13 detachedTextNode 
</ins><span class="cx"> PASS setEndAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 14 foreignTextNode 
</span><span class="cx"> PASS setEndAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 15 processingInstruction 
</span><del>-FAIL setEndAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 16 detachedProcessingInstruction assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 16 detachedProcessingInstruction 
</ins><span class="cx"> PASS setEndAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 17 comment 
</span><del>-FAIL setEndAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 18 detachedComment assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
-FAIL setEndAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 19 docfrag assert_throws: setEndAfter() to a node with null parent must throw INVALID_NODE_TYPE_ERR function &quot;function () {
-      range.setEndAfter(node);
-    }&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS setEndAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 18 detachedComment 
+PASS setEndAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 19 docfrag 
</ins><span class="cx"> PASS setEndAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 20 doctype 
</span><span class="cx"> PASS setEndAfter() with range 37 [processingInstruction, 0, processingInstruction, 4], node 21 foreignDoctype 
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3cdomrangesRangesurroundContentsexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/w3c/dom/ranges/Range-surroundContents-expected.txt (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/dom/ranges/Range-surroundContents-expected.txt        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/http/tests/w3c/dom/ranges/Range-surroundContents-expected.txt        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -21,21 +21,15 @@
</span><span class="cx"> PASS 0,5: resulting range position for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node detachedPara1 
</span><span class="cx"> PASS 0,6: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node detachedPara1.firstChild 
</span><span class="cx"> FAIL 0,6: resulting range position for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node detachedPara1.firstChild assert_equals: Unexpected endOffset after surroundContents() expected 2 but got 0
</span><del>-FAIL 0,7: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 0,7: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node document 
</ins><span class="cx"> PASS 0,7: resulting range position for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node document 
</span><span class="cx"> PASS 0,8: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node detachedDiv 
</span><span class="cx"> PASS 0,8: resulting range position for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node detachedDiv 
</span><del>-FAIL 0,9: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 0,9: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node foreignDoc 
</ins><span class="cx"> PASS 0,9: resulting range position for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node foreignDoc 
</span><span class="cx"> PASS 0,10: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node foreignPara2 
</span><span class="cx"> PASS 0,10: resulting range position for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node foreignPara2 
</span><del>-FAIL 0,11: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 0,11: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node xmlDoc 
</ins><span class="cx"> PASS 0,11: resulting range position for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node xmlDoc 
</span><span class="cx"> PASS 0,12: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node xmlElement 
</span><span class="cx"> PASS 0,12: resulting range position for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node xmlElement 
</span><span class="lines">@@ -51,17 +45,11 @@
</span><span class="cx"> FAIL 0,17: resulting range position for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node comment assert_equals: Unexpected endOffset after surroundContents() expected 2 but got 0
</span><span class="cx"> PASS 0,18: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node detachedComment 
</span><span class="cx"> FAIL 0,18: resulting range position for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node detachedComment assert_equals: Unexpected endOffset after surroundContents() expected 2 but got 0
</span><del>-FAIL 0,19: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 0,19: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node docfrag 
</ins><span class="cx"> PASS 0,19: resulting range position for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node docfrag 
</span><del>-FAIL 0,20: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 0,20: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node doctype 
</ins><span class="cx"> PASS 0,20: resulting range position for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node doctype 
</span><del>-FAIL 0,21: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 0,21: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node foreignDoctype 
</ins><span class="cx"> PASS 0,21: resulting range position for range [paras[0].firstChild, 0, paras[0].firstChild, 0], node foreignDoctype 
</span><span class="cx"> FAIL 1,0: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node paras[0] assert_true: First differing node: expected Element node &lt;p id=&quot;b&quot; style=&quot;display:none&quot;&gt;Ijklmnop
</span><span class="cx"> &lt;/p&gt;, got Text node &quot;Äb̈c̈d̈ëf̈g̈ḧ
</span><span class="lines">@@ -83,21 +71,15 @@
</span><span class="cx"> PASS 1,5: resulting range position for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node detachedPara1 
</span><span class="cx"> PASS 1,6: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node detachedPara1.firstChild 
</span><span class="cx"> FAIL 1,6: resulting range position for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node detachedPara1.firstChild assert_equals: Unexpected endOffset after surroundContents() expected 2 but got 0
</span><del>-FAIL 1,7: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 1,7: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node document 
</ins><span class="cx"> PASS 1,7: resulting range position for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node document 
</span><span class="cx"> PASS 1,8: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node detachedDiv 
</span><span class="cx"> PASS 1,8: resulting range position for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node detachedDiv 
</span><del>-FAIL 1,9: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 1,9: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node foreignDoc 
</ins><span class="cx"> PASS 1,9: resulting range position for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node foreignDoc 
</span><span class="cx"> PASS 1,10: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node foreignPara2 
</span><span class="cx"> PASS 1,10: resulting range position for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node foreignPara2 
</span><del>-FAIL 1,11: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 1,11: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node xmlDoc 
</ins><span class="cx"> PASS 1,11: resulting range position for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node xmlDoc 
</span><span class="cx"> PASS 1,12: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node xmlElement 
</span><span class="cx"> PASS 1,12: resulting range position for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node xmlElement 
</span><span class="lines">@@ -113,17 +95,11 @@
</span><span class="cx"> FAIL 1,17: resulting range position for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node comment assert_equals: Unexpected endOffset after surroundContents() expected 2 but got 0
</span><span class="cx"> PASS 1,18: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node detachedComment 
</span><span class="cx"> FAIL 1,18: resulting range position for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node detachedComment assert_equals: Unexpected endOffset after surroundContents() expected 2 but got 0
</span><del>-FAIL 1,19: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 1,19: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node docfrag 
</ins><span class="cx"> PASS 1,19: resulting range position for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node docfrag 
</span><del>-FAIL 1,20: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 1,20: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node doctype 
</ins><span class="cx"> PASS 1,20: resulting range position for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node doctype 
</span><del>-FAIL 1,21: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 1,21: resulting DOM for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node foreignDoctype 
</ins><span class="cx"> PASS 1,21: resulting range position for range [paras[0].firstChild, 0, paras[0].firstChild, 1], node foreignDoctype 
</span><span class="cx"> FAIL 2,0: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node paras[0] assert_true: First differing node: expected Element node &lt;p id=&quot;b&quot; style=&quot;display:none&quot;&gt;Ijklmnop
</span><span class="cx"> &lt;/p&gt;, got Text node &quot;Äb̈c̈d̈ëf̈g̈ḧ
</span><span class="lines">@@ -145,21 +121,15 @@
</span><span class="cx"> PASS 2,5: resulting range position for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node detachedPara1 
</span><span class="cx"> PASS 2,6: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node detachedPara1.firstChild 
</span><span class="cx"> PASS 2,6: resulting range position for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node detachedPara1.firstChild 
</span><del>-FAIL 2,7: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 2,7: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node document 
</ins><span class="cx"> PASS 2,7: resulting range position for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node document 
</span><span class="cx"> PASS 2,8: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node detachedDiv 
</span><span class="cx"> PASS 2,8: resulting range position for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node detachedDiv 
</span><del>-FAIL 2,9: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 2,9: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node foreignDoc 
</ins><span class="cx"> PASS 2,9: resulting range position for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node foreignDoc 
</span><span class="cx"> PASS 2,10: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node foreignPara2 
</span><span class="cx"> PASS 2,10: resulting range position for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node foreignPara2 
</span><del>-FAIL 2,11: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 2,11: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node xmlDoc 
</ins><span class="cx"> PASS 2,11: resulting range position for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node xmlDoc 
</span><span class="cx"> PASS 2,12: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node xmlElement 
</span><span class="cx"> PASS 2,12: resulting range position for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node xmlElement 
</span><span class="lines">@@ -175,17 +145,11 @@
</span><span class="cx"> PASS 2,17: resulting range position for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node comment 
</span><span class="cx"> PASS 2,18: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node detachedComment 
</span><span class="cx"> PASS 2,18: resulting range position for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node detachedComment 
</span><del>-FAIL 2,19: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 2,19: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node docfrag 
</ins><span class="cx"> PASS 2,19: resulting range position for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node docfrag 
</span><del>-FAIL 2,20: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 2,20: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node doctype 
</ins><span class="cx"> PASS 2,20: resulting range position for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node doctype 
</span><del>-FAIL 2,21: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 2,21: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node foreignDoctype 
</ins><span class="cx"> PASS 2,21: resulting range position for range [paras[0].firstChild, 2, paras[0].firstChild, 8], node foreignDoctype 
</span><span class="cx"> FAIL 3,0: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node paras[0] assert_true: First differing node: expected Element node &lt;p id=&quot;b&quot; style=&quot;display:none&quot;&gt;Ijklmnop
</span><span class="cx"> &lt;/p&gt;, got Text node &quot;Äb̈c̈d̈ëf̈g̈ḧ
</span><span class="lines">@@ -207,21 +171,15 @@
</span><span class="cx"> PASS 3,5: resulting range position for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node detachedPara1 
</span><span class="cx"> PASS 3,6: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node detachedPara1.firstChild 
</span><span class="cx"> PASS 3,6: resulting range position for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node detachedPara1.firstChild 
</span><del>-FAIL 3,7: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 3,7: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node document 
</ins><span class="cx"> PASS 3,7: resulting range position for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node document 
</span><span class="cx"> PASS 3,8: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node detachedDiv 
</span><span class="cx"> PASS 3,8: resulting range position for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node detachedDiv 
</span><del>-FAIL 3,9: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 3,9: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node foreignDoc 
</ins><span class="cx"> PASS 3,9: resulting range position for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node foreignDoc 
</span><span class="cx"> PASS 3,10: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node foreignPara2 
</span><span class="cx"> PASS 3,10: resulting range position for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node foreignPara2 
</span><del>-FAIL 3,11: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 3,11: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node xmlDoc 
</ins><span class="cx"> PASS 3,11: resulting range position for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node xmlDoc 
</span><span class="cx"> PASS 3,12: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node xmlElement 
</span><span class="cx"> PASS 3,12: resulting range position for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node xmlElement 
</span><span class="lines">@@ -237,17 +195,11 @@
</span><span class="cx"> PASS 3,17: resulting range position for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node comment 
</span><span class="cx"> PASS 3,18: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node detachedComment 
</span><span class="cx"> PASS 3,18: resulting range position for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node detachedComment 
</span><del>-FAIL 3,19: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 3,19: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node docfrag 
</ins><span class="cx"> PASS 3,19: resulting range position for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node docfrag 
</span><del>-FAIL 3,20: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 3,20: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node doctype 
</ins><span class="cx"> PASS 3,20: resulting range position for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node doctype 
</span><del>-FAIL 3,21: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 3,21: resulting DOM for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node foreignDoctype 
</ins><span class="cx"> PASS 3,21: resulting range position for range [paras[0].firstChild, 2, paras[0].firstChild, 9], node foreignDoctype 
</span><span class="cx"> PASS 4,0: resulting DOM for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node paras[0] 
</span><span class="cx"> PASS 4,0: resulting range position for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node paras[0] 
</span><span class="lines">@@ -265,21 +217,15 @@
</span><span class="cx"> PASS 4,5: resulting range position for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node detachedPara1 
</span><span class="cx"> PASS 4,6: resulting DOM for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node detachedPara1.firstChild 
</span><span class="cx"> FAIL 4,6: resulting range position for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node detachedPara1.firstChild assert_equals: Unexpected endOffset after surroundContents() expected 2 but got 0
</span><del>-FAIL 4,7: resulting DOM for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 4,7: resulting DOM for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node document 
</ins><span class="cx"> PASS 4,7: resulting range position for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node document 
</span><span class="cx"> PASS 4,8: resulting DOM for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node detachedDiv 
</span><span class="cx"> PASS 4,8: resulting range position for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node detachedDiv 
</span><del>-FAIL 4,9: resulting DOM for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 4,9: resulting DOM for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node foreignDoc 
</ins><span class="cx"> PASS 4,9: resulting range position for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node foreignDoc 
</span><span class="cx"> PASS 4,10: resulting DOM for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node foreignPara2 
</span><span class="cx"> PASS 4,10: resulting range position for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node foreignPara2 
</span><del>-FAIL 4,11: resulting DOM for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 4,11: resulting DOM for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node xmlDoc 
</ins><span class="cx"> PASS 4,11: resulting range position for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node xmlDoc 
</span><span class="cx"> PASS 4,12: resulting DOM for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node xmlElement 
</span><span class="cx"> PASS 4,12: resulting range position for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node xmlElement 
</span><span class="lines">@@ -295,17 +241,11 @@
</span><span class="cx"> FAIL 4,17: resulting range position for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node comment assert_equals: Unexpected endOffset after surroundContents() expected 2 but got 0
</span><span class="cx"> PASS 4,18: resulting DOM for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node detachedComment 
</span><span class="cx"> FAIL 4,18: resulting range position for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node detachedComment assert_equals: Unexpected endOffset after surroundContents() expected 2 but got 0
</span><del>-FAIL 4,19: resulting DOM for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 4,19: resulting DOM for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node docfrag 
</ins><span class="cx"> PASS 4,19: resulting range position for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node docfrag 
</span><del>-FAIL 4,20: resulting DOM for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 4,20: resulting DOM for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node doctype 
</ins><span class="cx"> PASS 4,20: resulting range position for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node doctype 
</span><del>-FAIL 4,21: resulting DOM for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 4,21: resulting DOM for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node foreignDoctype 
</ins><span class="cx"> PASS 4,21: resulting range position for range [paras[1].firstChild, 0, paras[1].firstChild, 0], node foreignDoctype 
</span><span class="cx"> PASS 5,0: resulting DOM for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node paras[0] 
</span><span class="cx"> PASS 5,0: resulting range position for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node paras[0] 
</span><span class="lines">@@ -323,21 +263,15 @@
</span><span class="cx"> PASS 5,5: resulting range position for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node detachedPara1 
</span><span class="cx"> PASS 5,6: resulting DOM for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node detachedPara1.firstChild 
</span><span class="cx"> PASS 5,6: resulting range position for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node detachedPara1.firstChild 
</span><del>-FAIL 5,7: resulting DOM for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 5,7: resulting DOM for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node document 
</ins><span class="cx"> PASS 5,7: resulting range position for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node document 
</span><span class="cx"> PASS 5,8: resulting DOM for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node detachedDiv 
</span><span class="cx"> PASS 5,8: resulting range position for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node detachedDiv 
</span><del>-FAIL 5,9: resulting DOM for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 5,9: resulting DOM for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node foreignDoc 
</ins><span class="cx"> PASS 5,9: resulting range position for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node foreignDoc 
</span><span class="cx"> PASS 5,10: resulting DOM for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node foreignPara2 
</span><span class="cx"> PASS 5,10: resulting range position for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node foreignPara2 
</span><del>-FAIL 5,11: resulting DOM for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 5,11: resulting DOM for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node xmlDoc 
</ins><span class="cx"> PASS 5,11: resulting range position for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node xmlDoc 
</span><span class="cx"> PASS 5,12: resulting DOM for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node xmlElement 
</span><span class="cx"> PASS 5,12: resulting range position for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node xmlElement 
</span><span class="lines">@@ -353,25 +287,19 @@
</span><span class="cx"> PASS 5,17: resulting range position for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node comment 
</span><span class="cx"> PASS 5,18: resulting DOM for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node detachedComment 
</span><span class="cx"> PASS 5,18: resulting range position for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node detachedComment 
</span><del>-FAIL 5,19: resulting DOM for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 5,19: resulting DOM for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node docfrag 
</ins><span class="cx"> PASS 5,19: resulting range position for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node docfrag 
</span><del>-FAIL 5,20: resulting DOM for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 5,20: resulting DOM for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node doctype 
</ins><span class="cx"> PASS 5,20: resulting range position for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node doctype 
</span><del>-FAIL 5,21: resulting DOM for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 5,21: resulting DOM for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node foreignDoctype 
</ins><span class="cx"> PASS 5,21: resulting range position for range [paras[1].firstChild, 2, paras[1].firstChild, 9], node foreignDoctype 
</span><del>-FAIL 6,0: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node paras[0] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL 6,0: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node paras[0] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> FAIL 6,0: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node paras[0] assert_equals: Unexpected startOffset after surroundContents() expected 1 but got 0
</span><span class="cx"> PASS 6,1: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node paras[0].firstChild 
</span><span class="cx"> FAIL 6,1: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node paras[0].firstChild assert_equals: Unexpected endOffset after surroundContents() expected 2 but got 0
</span><span class="cx"> PASS 6,2: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node paras[1].firstChild 
</span><span class="cx"> FAIL 6,2: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node paras[1].firstChild assert_equals: Unexpected endOffset after surroundContents() expected 2 but got 0
</span><del>-FAIL 6,3: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node foreignPara1 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL 6,3: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node foreignPara1 InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> FAIL 6,3: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node foreignPara1 assert_equals: Unexpected startOffset after surroundContents() expected 1 but got 0
</span><span class="cx"> PASS 6,4: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node foreignPara1.firstChild 
</span><span class="cx"> FAIL 6,4: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node foreignPara1.firstChild assert_equals: Unexpected endOffset after surroundContents() expected 2 but got 0
</span><span class="lines">@@ -379,23 +307,17 @@
</span><span class="cx"> FAIL 6,5: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node detachedPara1 assert_true: First differing node: expected Element node &lt;p&gt;Wxyzabcd&lt;/p&gt;, got Text node &quot;Opqrstuv&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 6,6: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node detachedPara1.firstChild assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Opqrstuv&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 6,6: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node detachedPara1.firstChild assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Opqrstuv&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><del>-FAIL 6,7: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 6,7: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node document 
</ins><span class="cx"> PASS 6,7: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node document 
</span><span class="cx"> FAIL 6,8: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node detachedDiv assert_unreached: DOMs were not equal but we couldn't figure out why Reached unreachable code
</span><span class="cx"> FAIL 6,8: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node detachedDiv assert_unreached: DOMs were not equal but we couldn't figure out why Reached unreachable code
</span><del>-FAIL 6,9: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 6,9: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node foreignDoc 
</ins><span class="cx"> PASS 6,9: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node foreignDoc 
</span><del>-FAIL 6,10: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node foreignPara2 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL 6,10: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node foreignPara2 InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> FAIL 6,10: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node foreignPara2 assert_equals: Unexpected startOffset after surroundContents() expected 1 but got 0
</span><del>-FAIL 6,11: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 6,11: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node xmlDoc 
</ins><span class="cx"> PASS 6,11: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node xmlDoc 
</span><del>-FAIL 6,12: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node xmlElement INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL 6,12: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node xmlElement InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> FAIL 6,12: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node xmlElement assert_equals: Unexpected startOffset after surroundContents() expected 1 but got 0
</span><span class="cx"> PASS 6,13: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node detachedTextNode 
</span><span class="cx"> FAIL 6,13: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node detachedTextNode assert_equals: Unexpected endOffset after surroundContents() expected 2 but got 0
</span><span class="lines">@@ -409,25 +331,19 @@
</span><span class="cx"> FAIL 6,17: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node comment assert_equals: Unexpected endOffset after surroundContents() expected 2 but got 0
</span><span class="cx"> PASS 6,18: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node detachedComment 
</span><span class="cx"> FAIL 6,18: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node detachedComment assert_equals: Unexpected endOffset after surroundContents() expected 2 but got 0
</span><del>-FAIL 6,19: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 6,19: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node docfrag 
</ins><span class="cx"> PASS 6,19: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node docfrag 
</span><del>-FAIL 6,20: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 6,20: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node doctype 
</ins><span class="cx"> PASS 6,20: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node doctype 
</span><del>-FAIL 6,21: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 6,21: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node foreignDoctype 
</ins><span class="cx"> PASS 6,21: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], node foreignDoctype 
</span><del>-FAIL 7,0: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node paras[0] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL 7,0: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node paras[0] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> FAIL 7,0: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node paras[0] assert_equals: Unexpected startOffset after surroundContents() expected 1 but got 2
</span><span class="cx"> PASS 7,1: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node paras[0].firstChild 
</span><span class="cx"> PASS 7,1: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node paras[0].firstChild 
</span><span class="cx"> PASS 7,2: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node paras[1].firstChild 
</span><span class="cx"> PASS 7,2: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node paras[1].firstChild 
</span><del>-FAIL 7,3: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node foreignPara1 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL 7,3: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node foreignPara1 InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> FAIL 7,3: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node foreignPara1 assert_equals: Unexpected startOffset after surroundContents() expected 1 but got 2
</span><span class="cx"> PASS 7,4: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node foreignPara1.firstChild 
</span><span class="cx"> PASS 7,4: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node foreignPara1.firstChild 
</span><span class="lines">@@ -435,23 +351,17 @@
</span><span class="cx"> FAIL 7,5: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node detachedPara1 assert_true: First differing node: expected Element node &lt;p&gt;Wxyzabcd&lt;/p&gt;, got Text node &quot;Opqrstuv&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 7,6: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node detachedPara1.firstChild assert_true: First differing node: expected Text node &quot;Op&quot;, got Text node &quot;Opqrstuv&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 7,6: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node detachedPara1.firstChild assert_true: First differing node: expected Text node &quot;Op&quot;, got Text node &quot;Opqrstuv&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><del>-FAIL 7,7: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 7,7: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node document 
</ins><span class="cx"> PASS 7,7: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node document 
</span><span class="cx"> FAIL 7,8: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node detachedDiv assert_unreached: DOMs were not equal but we couldn't figure out why Reached unreachable code
</span><span class="cx"> FAIL 7,8: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node detachedDiv assert_unreached: DOMs were not equal but we couldn't figure out why Reached unreachable code
</span><del>-FAIL 7,9: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 7,9: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node foreignDoc 
</ins><span class="cx"> PASS 7,9: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node foreignDoc 
</span><del>-FAIL 7,10: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node foreignPara2 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL 7,10: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node foreignPara2 InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> FAIL 7,10: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node foreignPara2 assert_equals: Unexpected startOffset after surroundContents() expected 1 but got 2
</span><del>-FAIL 7,11: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 7,11: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node xmlDoc 
</ins><span class="cx"> PASS 7,11: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node xmlDoc 
</span><del>-FAIL 7,12: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node xmlElement INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL 7,12: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node xmlElement InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> FAIL 7,12: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node xmlElement assert_equals: Unexpected startOffset after surroundContents() expected 1 but got 2
</span><span class="cx"> PASS 7,13: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node detachedTextNode 
</span><span class="cx"> PASS 7,13: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node detachedTextNode 
</span><span class="lines">@@ -465,17 +375,11 @@
</span><span class="cx"> PASS 7,17: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node comment 
</span><span class="cx"> PASS 7,18: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node detachedComment 
</span><span class="cx"> PASS 7,18: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node detachedComment 
</span><del>-FAIL 7,19: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 7,19: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node docfrag 
</ins><span class="cx"> PASS 7,19: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node docfrag 
</span><del>-FAIL 7,20: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 7,20: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node doctype 
</ins><span class="cx"> PASS 7,20: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node doctype 
</span><del>-FAIL 7,21: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 7,21: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node foreignDoctype 
</ins><span class="cx"> PASS 7,21: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], node foreignDoctype 
</span><span class="cx"> PASS 8,0: resulting DOM for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node paras[0] 
</span><span class="cx"> PASS 8,0: resulting range position for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node paras[0] 
</span><span class="lines">@@ -491,21 +395,15 @@
</span><span class="cx"> PASS 8,5: resulting range position for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node detachedPara1 
</span><span class="cx"> PASS 8,6: resulting DOM for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node detachedPara1.firstChild 
</span><span class="cx"> FAIL 8,6: resulting range position for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node detachedPara1.firstChild assert_equals: Unexpected endOffset after surroundContents() expected 2 but got 0
</span><del>-FAIL 8,7: resulting DOM for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 8,7: resulting DOM for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node document 
</ins><span class="cx"> PASS 8,7: resulting range position for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node document 
</span><span class="cx"> PASS 8,8: resulting DOM for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node detachedDiv 
</span><span class="cx"> PASS 8,8: resulting range position for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node detachedDiv 
</span><del>-FAIL 8,9: resulting DOM for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 8,9: resulting DOM for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node foreignDoc 
</ins><span class="cx"> PASS 8,9: resulting range position for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node foreignDoc 
</span><span class="cx"> PASS 8,10: resulting DOM for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node foreignPara2 
</span><span class="cx"> PASS 8,10: resulting range position for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node foreignPara2 
</span><del>-FAIL 8,11: resulting DOM for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 8,11: resulting DOM for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node xmlDoc 
</ins><span class="cx"> PASS 8,11: resulting range position for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node xmlDoc 
</span><span class="cx"> PASS 8,12: resulting DOM for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node xmlElement 
</span><span class="cx"> PASS 8,12: resulting range position for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node xmlElement 
</span><span class="lines">@@ -521,17 +419,11 @@
</span><span class="cx"> FAIL 8,17: resulting range position for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node comment assert_equals: Unexpected endOffset after surroundContents() expected 2 but got 0
</span><span class="cx"> PASS 8,18: resulting DOM for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node detachedComment 
</span><span class="cx"> FAIL 8,18: resulting range position for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node detachedComment assert_equals: Unexpected endOffset after surroundContents() expected 2 but got 0
</span><del>-FAIL 8,19: resulting DOM for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 8,19: resulting DOM for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node docfrag 
</ins><span class="cx"> PASS 8,19: resulting range position for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node docfrag 
</span><del>-FAIL 8,20: resulting DOM for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 8,20: resulting DOM for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node doctype 
</ins><span class="cx"> PASS 8,20: resulting range position for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node doctype 
</span><del>-FAIL 8,21: resulting DOM for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 8,21: resulting DOM for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node foreignDoctype 
</ins><span class="cx"> PASS 8,21: resulting range position for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], node foreignDoctype 
</span><span class="cx"> PASS 9,0: resulting DOM for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node paras[0] 
</span><span class="cx"> PASS 9,0: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node paras[0] 
</span><span class="lines">@@ -547,21 +439,15 @@
</span><span class="cx"> PASS 9,5: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node detachedPara1 
</span><span class="cx"> PASS 9,6: resulting DOM for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node detachedPara1.firstChild 
</span><span class="cx"> PASS 9,6: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node detachedPara1.firstChild 
</span><del>-FAIL 9,7: resulting DOM for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 9,7: resulting DOM for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node document 
</ins><span class="cx"> PASS 9,7: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node document 
</span><span class="cx"> PASS 9,8: resulting DOM for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node detachedDiv 
</span><span class="cx"> PASS 9,8: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node detachedDiv 
</span><del>-FAIL 9,9: resulting DOM for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 9,9: resulting DOM for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node foreignDoc 
</ins><span class="cx"> PASS 9,9: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node foreignDoc 
</span><span class="cx"> PASS 9,10: resulting DOM for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node foreignPara2 
</span><span class="cx"> PASS 9,10: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node foreignPara2 
</span><del>-FAIL 9,11: resulting DOM for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 9,11: resulting DOM for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node xmlDoc 
</ins><span class="cx"> PASS 9,11: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node xmlDoc 
</span><span class="cx"> PASS 9,12: resulting DOM for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node xmlElement 
</span><span class="cx"> PASS 9,12: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node xmlElement 
</span><span class="lines">@@ -577,17 +463,11 @@
</span><span class="cx"> PASS 9,17: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node comment 
</span><span class="cx"> PASS 9,18: resulting DOM for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node detachedComment 
</span><span class="cx"> PASS 9,18: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node detachedComment 
</span><del>-FAIL 9,19: resulting DOM for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 9,19: resulting DOM for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node docfrag 
</ins><span class="cx"> PASS 9,19: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node docfrag 
</span><del>-FAIL 9,20: resulting DOM for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 9,20: resulting DOM for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node doctype 
</ins><span class="cx"> PASS 9,20: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node doctype 
</span><del>-FAIL 9,21: resulting DOM for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 9,21: resulting DOM for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node foreignDoctype 
</ins><span class="cx"> PASS 9,21: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], node foreignDoctype 
</span><span class="cx"> PASS 10,0: resulting DOM for range [document.documentElement, 0, document.documentElement, 1], node paras[0] 
</span><span class="cx"> PASS 10,0: resulting range position for range [document.documentElement, 0, document.documentElement, 1], node paras[0] 
</span><span class="lines">@@ -603,21 +483,15 @@
</span><span class="cx"> PASS 10,5: resulting range position for range [document.documentElement, 0, document.documentElement, 1], node detachedPara1 
</span><span class="cx"> PASS 10,6: resulting DOM for range [document.documentElement, 0, document.documentElement, 1], node detachedPara1.firstChild 
</span><span class="cx"> PASS 10,6: resulting range position for range [document.documentElement, 0, document.documentElement, 1], node detachedPara1.firstChild 
</span><del>-FAIL 10,7: resulting DOM for range [document.documentElement, 0, document.documentElement, 1], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 10,7: resulting DOM for range [document.documentElement, 0, document.documentElement, 1], node document 
</ins><span class="cx"> PASS 10,7: resulting range position for range [document.documentElement, 0, document.documentElement, 1], node document 
</span><span class="cx"> PASS 10,8: resulting DOM for range [document.documentElement, 0, document.documentElement, 1], node detachedDiv 
</span><span class="cx"> PASS 10,8: resulting range position for range [document.documentElement, 0, document.documentElement, 1], node detachedDiv 
</span><del>-FAIL 10,9: resulting DOM for range [document.documentElement, 0, document.documentElement, 1], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 10,9: resulting DOM for range [document.documentElement, 0, document.documentElement, 1], node foreignDoc 
</ins><span class="cx"> PASS 10,9: resulting range position for range [document.documentElement, 0, document.documentElement, 1], node foreignDoc 
</span><span class="cx"> PASS 10,10: resulting DOM for range [document.documentElement, 0, document.documentElement, 1], node foreignPara2 
</span><span class="cx"> PASS 10,10: resulting range position for range [document.documentElement, 0, document.documentElement, 1], node foreignPara2 
</span><del>-FAIL 10,11: resulting DOM for range [document.documentElement, 0, document.documentElement, 1], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 10,11: resulting DOM for range [document.documentElement, 0, document.documentElement, 1], node xmlDoc 
</ins><span class="cx"> PASS 10,11: resulting range position for range [document.documentElement, 0, document.documentElement, 1], node xmlDoc 
</span><span class="cx"> PASS 10,12: resulting DOM for range [document.documentElement, 0, document.documentElement, 1], node xmlElement 
</span><span class="cx"> PASS 10,12: resulting range position for range [document.documentElement, 0, document.documentElement, 1], node xmlElement 
</span><span class="lines">@@ -633,17 +507,11 @@
</span><span class="cx"> PASS 10,17: resulting range position for range [document.documentElement, 0, document.documentElement, 1], node comment 
</span><span class="cx"> PASS 10,18: resulting DOM for range [document.documentElement, 0, document.documentElement, 1], node detachedComment 
</span><span class="cx"> PASS 10,18: resulting range position for range [document.documentElement, 0, document.documentElement, 1], node detachedComment 
</span><del>-FAIL 10,19: resulting DOM for range [document.documentElement, 0, document.documentElement, 1], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 10,19: resulting DOM for range [document.documentElement, 0, document.documentElement, 1], node docfrag 
</ins><span class="cx"> PASS 10,19: resulting range position for range [document.documentElement, 0, document.documentElement, 1], node docfrag 
</span><del>-FAIL 10,20: resulting DOM for range [document.documentElement, 0, document.documentElement, 1], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 10,20: resulting DOM for range [document.documentElement, 0, document.documentElement, 1], node doctype 
</ins><span class="cx"> PASS 10,20: resulting range position for range [document.documentElement, 0, document.documentElement, 1], node doctype 
</span><del>-FAIL 10,21: resulting DOM for range [document.documentElement, 0, document.documentElement, 1], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 10,21: resulting DOM for range [document.documentElement, 0, document.documentElement, 1], node foreignDoctype 
</ins><span class="cx"> PASS 10,21: resulting range position for range [document.documentElement, 0, document.documentElement, 1], node foreignDoctype 
</span><span class="cx"> PASS 11,0: resulting DOM for range [document.documentElement, 0, document.documentElement, 2], node paras[0] 
</span><span class="cx"> PASS 11,0: resulting range position for range [document.documentElement, 0, document.documentElement, 2], node paras[0] 
</span><span class="lines">@@ -659,21 +527,15 @@
</span><span class="cx"> PASS 11,5: resulting range position for range [document.documentElement, 0, document.documentElement, 2], node detachedPara1 
</span><span class="cx"> PASS 11,6: resulting DOM for range [document.documentElement, 0, document.documentElement, 2], node detachedPara1.firstChild 
</span><span class="cx"> PASS 11,6: resulting range position for range [document.documentElement, 0, document.documentElement, 2], node detachedPara1.firstChild 
</span><del>-FAIL 11,7: resulting DOM for range [document.documentElement, 0, document.documentElement, 2], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 11,7: resulting DOM for range [document.documentElement, 0, document.documentElement, 2], node document 
</ins><span class="cx"> PASS 11,7: resulting range position for range [document.documentElement, 0, document.documentElement, 2], node document 
</span><span class="cx"> PASS 11,8: resulting DOM for range [document.documentElement, 0, document.documentElement, 2], node detachedDiv 
</span><span class="cx"> PASS 11,8: resulting range position for range [document.documentElement, 0, document.documentElement, 2], node detachedDiv 
</span><del>-FAIL 11,9: resulting DOM for range [document.documentElement, 0, document.documentElement, 2], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 11,9: resulting DOM for range [document.documentElement, 0, document.documentElement, 2], node foreignDoc 
</ins><span class="cx"> PASS 11,9: resulting range position for range [document.documentElement, 0, document.documentElement, 2], node foreignDoc 
</span><span class="cx"> PASS 11,10: resulting DOM for range [document.documentElement, 0, document.documentElement, 2], node foreignPara2 
</span><span class="cx"> PASS 11,10: resulting range position for range [document.documentElement, 0, document.documentElement, 2], node foreignPara2 
</span><del>-FAIL 11,11: resulting DOM for range [document.documentElement, 0, document.documentElement, 2], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 11,11: resulting DOM for range [document.documentElement, 0, document.documentElement, 2], node xmlDoc 
</ins><span class="cx"> PASS 11,11: resulting range position for range [document.documentElement, 0, document.documentElement, 2], node xmlDoc 
</span><span class="cx"> PASS 11,12: resulting DOM for range [document.documentElement, 0, document.documentElement, 2], node xmlElement 
</span><span class="cx"> PASS 11,12: resulting range position for range [document.documentElement, 0, document.documentElement, 2], node xmlElement 
</span><span class="lines">@@ -689,17 +551,11 @@
</span><span class="cx"> PASS 11,17: resulting range position for range [document.documentElement, 0, document.documentElement, 2], node comment 
</span><span class="cx"> PASS 11,18: resulting DOM for range [document.documentElement, 0, document.documentElement, 2], node detachedComment 
</span><span class="cx"> PASS 11,18: resulting range position for range [document.documentElement, 0, document.documentElement, 2], node detachedComment 
</span><del>-FAIL 11,19: resulting DOM for range [document.documentElement, 0, document.documentElement, 2], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 11,19: resulting DOM for range [document.documentElement, 0, document.documentElement, 2], node docfrag 
</ins><span class="cx"> PASS 11,19: resulting range position for range [document.documentElement, 0, document.documentElement, 2], node docfrag 
</span><del>-FAIL 11,20: resulting DOM for range [document.documentElement, 0, document.documentElement, 2], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 11,20: resulting DOM for range [document.documentElement, 0, document.documentElement, 2], node doctype 
</ins><span class="cx"> PASS 11,20: resulting range position for range [document.documentElement, 0, document.documentElement, 2], node doctype 
</span><del>-FAIL 11,21: resulting DOM for range [document.documentElement, 0, document.documentElement, 2], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 11,21: resulting DOM for range [document.documentElement, 0, document.documentElement, 2], node foreignDoctype 
</ins><span class="cx"> PASS 11,21: resulting range position for range [document.documentElement, 0, document.documentElement, 2], node foreignDoctype 
</span><span class="cx"> PASS 12,0: resulting DOM for range [document.documentElement, 1, document.documentElement, 2], node paras[0] 
</span><span class="cx"> PASS 12,0: resulting range position for range [document.documentElement, 1, document.documentElement, 2], node paras[0] 
</span><span class="lines">@@ -715,21 +571,15 @@
</span><span class="cx"> PASS 12,5: resulting range position for range [document.documentElement, 1, document.documentElement, 2], node detachedPara1 
</span><span class="cx"> PASS 12,6: resulting DOM for range [document.documentElement, 1, document.documentElement, 2], node detachedPara1.firstChild 
</span><span class="cx"> PASS 12,6: resulting range position for range [document.documentElement, 1, document.documentElement, 2], node detachedPara1.firstChild 
</span><del>-FAIL 12,7: resulting DOM for range [document.documentElement, 1, document.documentElement, 2], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 12,7: resulting DOM for range [document.documentElement, 1, document.documentElement, 2], node document 
</ins><span class="cx"> PASS 12,7: resulting range position for range [document.documentElement, 1, document.documentElement, 2], node document 
</span><span class="cx"> PASS 12,8: resulting DOM for range [document.documentElement, 1, document.documentElement, 2], node detachedDiv 
</span><span class="cx"> PASS 12,8: resulting range position for range [document.documentElement, 1, document.documentElement, 2], node detachedDiv 
</span><del>-FAIL 12,9: resulting DOM for range [document.documentElement, 1, document.documentElement, 2], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 12,9: resulting DOM for range [document.documentElement, 1, document.documentElement, 2], node foreignDoc 
</ins><span class="cx"> PASS 12,9: resulting range position for range [document.documentElement, 1, document.documentElement, 2], node foreignDoc 
</span><span class="cx"> PASS 12,10: resulting DOM for range [document.documentElement, 1, document.documentElement, 2], node foreignPara2 
</span><span class="cx"> PASS 12,10: resulting range position for range [document.documentElement, 1, document.documentElement, 2], node foreignPara2 
</span><del>-FAIL 12,11: resulting DOM for range [document.documentElement, 1, document.documentElement, 2], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 12,11: resulting DOM for range [document.documentElement, 1, document.documentElement, 2], node xmlDoc 
</ins><span class="cx"> PASS 12,11: resulting range position for range [document.documentElement, 1, document.documentElement, 2], node xmlDoc 
</span><span class="cx"> PASS 12,12: resulting DOM for range [document.documentElement, 1, document.documentElement, 2], node xmlElement 
</span><span class="cx"> PASS 12,12: resulting range position for range [document.documentElement, 1, document.documentElement, 2], node xmlElement 
</span><span class="lines">@@ -745,17 +595,11 @@
</span><span class="cx"> PASS 12,17: resulting range position for range [document.documentElement, 1, document.documentElement, 2], node comment 
</span><span class="cx"> PASS 12,18: resulting DOM for range [document.documentElement, 1, document.documentElement, 2], node detachedComment 
</span><span class="cx"> PASS 12,18: resulting range position for range [document.documentElement, 1, document.documentElement, 2], node detachedComment 
</span><del>-FAIL 12,19: resulting DOM for range [document.documentElement, 1, document.documentElement, 2], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 12,19: resulting DOM for range [document.documentElement, 1, document.documentElement, 2], node docfrag 
</ins><span class="cx"> PASS 12,19: resulting range position for range [document.documentElement, 1, document.documentElement, 2], node docfrag 
</span><del>-FAIL 12,20: resulting DOM for range [document.documentElement, 1, document.documentElement, 2], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 12,20: resulting DOM for range [document.documentElement, 1, document.documentElement, 2], node doctype 
</ins><span class="cx"> PASS 12,20: resulting range position for range [document.documentElement, 1, document.documentElement, 2], node doctype 
</span><del>-FAIL 12,21: resulting DOM for range [document.documentElement, 1, document.documentElement, 2], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 12,21: resulting DOM for range [document.documentElement, 1, document.documentElement, 2], node foreignDoctype 
</ins><span class="cx"> PASS 12,21: resulting range position for range [document.documentElement, 1, document.documentElement, 2], node foreignDoctype 
</span><span class="cx"> PASS 13,0: resulting DOM for range [document.head, 1, document.head, 1], node paras[0] 
</span><span class="cx"> PASS 13,0: resulting range position for range [document.head, 1, document.head, 1], node paras[0] 
</span><span class="lines">@@ -771,21 +615,15 @@
</span><span class="cx"> PASS 13,5: resulting range position for range [document.head, 1, document.head, 1], node detachedPara1 
</span><span class="cx"> PASS 13,6: resulting DOM for range [document.head, 1, document.head, 1], node detachedPara1.firstChild 
</span><span class="cx"> PASS 13,6: resulting range position for range [document.head, 1, document.head, 1], node detachedPara1.firstChild 
</span><del>-FAIL 13,7: resulting DOM for range [document.head, 1, document.head, 1], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 13,7: resulting DOM for range [document.head, 1, document.head, 1], node document 
</ins><span class="cx"> PASS 13,7: resulting range position for range [document.head, 1, document.head, 1], node document 
</span><span class="cx"> PASS 13,8: resulting DOM for range [document.head, 1, document.head, 1], node detachedDiv 
</span><span class="cx"> PASS 13,8: resulting range position for range [document.head, 1, document.head, 1], node detachedDiv 
</span><del>-FAIL 13,9: resulting DOM for range [document.head, 1, document.head, 1], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 13,9: resulting DOM for range [document.head, 1, document.head, 1], node foreignDoc 
</ins><span class="cx"> PASS 13,9: resulting range position for range [document.head, 1, document.head, 1], node foreignDoc 
</span><span class="cx"> PASS 13,10: resulting DOM for range [document.head, 1, document.head, 1], node foreignPara2 
</span><span class="cx"> PASS 13,10: resulting range position for range [document.head, 1, document.head, 1], node foreignPara2 
</span><del>-FAIL 13,11: resulting DOM for range [document.head, 1, document.head, 1], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 13,11: resulting DOM for range [document.head, 1, document.head, 1], node xmlDoc 
</ins><span class="cx"> PASS 13,11: resulting range position for range [document.head, 1, document.head, 1], node xmlDoc 
</span><span class="cx"> PASS 13,12: resulting DOM for range [document.head, 1, document.head, 1], node xmlElement 
</span><span class="cx"> PASS 13,12: resulting range position for range [document.head, 1, document.head, 1], node xmlElement 
</span><span class="lines">@@ -801,17 +639,11 @@
</span><span class="cx"> PASS 13,17: resulting range position for range [document.head, 1, document.head, 1], node comment 
</span><span class="cx"> PASS 13,18: resulting DOM for range [document.head, 1, document.head, 1], node detachedComment 
</span><span class="cx"> PASS 13,18: resulting range position for range [document.head, 1, document.head, 1], node detachedComment 
</span><del>-FAIL 13,19: resulting DOM for range [document.head, 1, document.head, 1], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 13,19: resulting DOM for range [document.head, 1, document.head, 1], node docfrag 
</ins><span class="cx"> PASS 13,19: resulting range position for range [document.head, 1, document.head, 1], node docfrag 
</span><del>-FAIL 13,20: resulting DOM for range [document.head, 1, document.head, 1], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 13,20: resulting DOM for range [document.head, 1, document.head, 1], node doctype 
</ins><span class="cx"> PASS 13,20: resulting range position for range [document.head, 1, document.head, 1], node doctype 
</span><del>-FAIL 13,21: resulting DOM for range [document.head, 1, document.head, 1], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 13,21: resulting DOM for range [document.head, 1, document.head, 1], node foreignDoctype 
</ins><span class="cx"> PASS 13,21: resulting range position for range [document.head, 1, document.head, 1], node foreignDoctype 
</span><span class="cx"> PASS 14,0: resulting DOM for range [document.body, 4, document.body, 5], node paras[0] 
</span><span class="cx"> PASS 14,0: resulting range position for range [document.body, 4, document.body, 5], node paras[0] 
</span><span class="lines">@@ -827,21 +659,15 @@
</span><span class="cx"> PASS 14,5: resulting range position for range [document.body, 4, document.body, 5], node detachedPara1 
</span><span class="cx"> PASS 14,6: resulting DOM for range [document.body, 4, document.body, 5], node detachedPara1.firstChild 
</span><span class="cx"> PASS 14,6: resulting range position for range [document.body, 4, document.body, 5], node detachedPara1.firstChild 
</span><del>-FAIL 14,7: resulting DOM for range [document.body, 4, document.body, 5], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 14,7: resulting DOM for range [document.body, 4, document.body, 5], node document 
</ins><span class="cx"> PASS 14,7: resulting range position for range [document.body, 4, document.body, 5], node document 
</span><span class="cx"> PASS 14,8: resulting DOM for range [document.body, 4, document.body, 5], node detachedDiv 
</span><span class="cx"> PASS 14,8: resulting range position for range [document.body, 4, document.body, 5], node detachedDiv 
</span><del>-FAIL 14,9: resulting DOM for range [document.body, 4, document.body, 5], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 14,9: resulting DOM for range [document.body, 4, document.body, 5], node foreignDoc 
</ins><span class="cx"> PASS 14,9: resulting range position for range [document.body, 4, document.body, 5], node foreignDoc 
</span><span class="cx"> PASS 14,10: resulting DOM for range [document.body, 4, document.body, 5], node foreignPara2 
</span><span class="cx"> PASS 14,10: resulting range position for range [document.body, 4, document.body, 5], node foreignPara2 
</span><del>-FAIL 14,11: resulting DOM for range [document.body, 4, document.body, 5], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 14,11: resulting DOM for range [document.body, 4, document.body, 5], node xmlDoc 
</ins><span class="cx"> PASS 14,11: resulting range position for range [document.body, 4, document.body, 5], node xmlDoc 
</span><span class="cx"> PASS 14,12: resulting DOM for range [document.body, 4, document.body, 5], node xmlElement 
</span><span class="cx"> PASS 14,12: resulting range position for range [document.body, 4, document.body, 5], node xmlElement 
</span><span class="lines">@@ -857,17 +683,11 @@
</span><span class="cx"> PASS 14,17: resulting range position for range [document.body, 4, document.body, 5], node comment 
</span><span class="cx"> PASS 14,18: resulting DOM for range [document.body, 4, document.body, 5], node detachedComment 
</span><span class="cx"> PASS 14,18: resulting range position for range [document.body, 4, document.body, 5], node detachedComment 
</span><del>-FAIL 14,19: resulting DOM for range [document.body, 4, document.body, 5], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 14,19: resulting DOM for range [document.body, 4, document.body, 5], node docfrag 
</ins><span class="cx"> PASS 14,19: resulting range position for range [document.body, 4, document.body, 5], node docfrag 
</span><del>-FAIL 14,20: resulting DOM for range [document.body, 4, document.body, 5], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 14,20: resulting DOM for range [document.body, 4, document.body, 5], node doctype 
</ins><span class="cx"> PASS 14,20: resulting range position for range [document.body, 4, document.body, 5], node doctype 
</span><del>-FAIL 14,21: resulting DOM for range [document.body, 4, document.body, 5], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 14,21: resulting DOM for range [document.body, 4, document.body, 5], node foreignDoctype 
</ins><span class="cx"> PASS 14,21: resulting range position for range [document.body, 4, document.body, 5], node foreignDoctype 
</span><span class="cx"> PASS 15,0: resulting DOM for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node paras[0] 
</span><span class="cx"> PASS 15,0: resulting range position for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node paras[0] 
</span><span class="lines">@@ -883,21 +703,15 @@
</span><span class="cx"> PASS 15,5: resulting range position for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node detachedPara1 
</span><span class="cx"> PASS 15,6: resulting DOM for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node detachedPara1.firstChild 
</span><span class="cx"> PASS 15,6: resulting range position for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node detachedPara1.firstChild 
</span><del>-FAIL 15,7: resulting DOM for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 15,7: resulting DOM for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node document 
</ins><span class="cx"> PASS 15,7: resulting range position for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node document 
</span><span class="cx"> PASS 15,8: resulting DOM for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node detachedDiv 
</span><span class="cx"> PASS 15,8: resulting range position for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node detachedDiv 
</span><del>-FAIL 15,9: resulting DOM for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 15,9: resulting DOM for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node foreignDoc 
</ins><span class="cx"> PASS 15,9: resulting range position for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node foreignDoc 
</span><span class="cx"> PASS 15,10: resulting DOM for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node foreignPara2 
</span><span class="cx"> PASS 15,10: resulting range position for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node foreignPara2 
</span><del>-FAIL 15,11: resulting DOM for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 15,11: resulting DOM for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node xmlDoc 
</ins><span class="cx"> PASS 15,11: resulting range position for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node xmlDoc 
</span><span class="cx"> PASS 15,12: resulting DOM for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node xmlElement 
</span><span class="cx"> PASS 15,12: resulting range position for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node xmlElement 
</span><span class="lines">@@ -913,17 +727,11 @@
</span><span class="cx"> PASS 15,17: resulting range position for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node comment 
</span><span class="cx"> PASS 15,18: resulting DOM for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node detachedComment 
</span><span class="cx"> PASS 15,18: resulting range position for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node detachedComment 
</span><del>-FAIL 15,19: resulting DOM for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 15,19: resulting DOM for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node docfrag 
</ins><span class="cx"> PASS 15,19: resulting range position for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node docfrag 
</span><del>-FAIL 15,20: resulting DOM for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 15,20: resulting DOM for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node doctype 
</ins><span class="cx"> PASS 15,20: resulting range position for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node doctype 
</span><del>-FAIL 15,21: resulting DOM for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 15,21: resulting DOM for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node foreignDoctype 
</ins><span class="cx"> PASS 15,21: resulting range position for range [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], node foreignDoctype 
</span><span class="cx"> FAIL 16,0: resulting DOM for range [paras[0], 0, paras[0], 1], node paras[0] assert_true: First differing node: expected Element node &lt;p id=&quot;b&quot; style=&quot;display:none&quot;&gt;Ijklmnop
</span><span class="cx"> &lt;/p&gt;, got Text node &quot;Äb̈c̈d̈ëf̈g̈ḧ
</span><span class="lines">@@ -943,21 +751,15 @@
</span><span class="cx"> PASS 16,5: resulting range position for range [paras[0], 0, paras[0], 1], node detachedPara1 
</span><span class="cx"> PASS 16,6: resulting DOM for range [paras[0], 0, paras[0], 1], node detachedPara1.firstChild 
</span><span class="cx"> PASS 16,6: resulting range position for range [paras[0], 0, paras[0], 1], node detachedPara1.firstChild 
</span><del>-FAIL 16,7: resulting DOM for range [paras[0], 0, paras[0], 1], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 16,7: resulting DOM for range [paras[0], 0, paras[0], 1], node document 
</ins><span class="cx"> PASS 16,7: resulting range position for range [paras[0], 0, paras[0], 1], node document 
</span><span class="cx"> PASS 16,8: resulting DOM for range [paras[0], 0, paras[0], 1], node detachedDiv 
</span><span class="cx"> PASS 16,8: resulting range position for range [paras[0], 0, paras[0], 1], node detachedDiv 
</span><del>-FAIL 16,9: resulting DOM for range [paras[0], 0, paras[0], 1], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 16,9: resulting DOM for range [paras[0], 0, paras[0], 1], node foreignDoc 
</ins><span class="cx"> PASS 16,9: resulting range position for range [paras[0], 0, paras[0], 1], node foreignDoc 
</span><span class="cx"> PASS 16,10: resulting DOM for range [paras[0], 0, paras[0], 1], node foreignPara2 
</span><span class="cx"> PASS 16,10: resulting range position for range [paras[0], 0, paras[0], 1], node foreignPara2 
</span><del>-FAIL 16,11: resulting DOM for range [paras[0], 0, paras[0], 1], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 16,11: resulting DOM for range [paras[0], 0, paras[0], 1], node xmlDoc 
</ins><span class="cx"> PASS 16,11: resulting range position for range [paras[0], 0, paras[0], 1], node xmlDoc 
</span><span class="cx"> PASS 16,12: resulting DOM for range [paras[0], 0, paras[0], 1], node xmlElement 
</span><span class="cx"> PASS 16,12: resulting range position for range [paras[0], 0, paras[0], 1], node xmlElement 
</span><span class="lines">@@ -973,25 +775,19 @@
</span><span class="cx"> PASS 16,17: resulting range position for range [paras[0], 0, paras[0], 1], node comment 
</span><span class="cx"> PASS 16,18: resulting DOM for range [paras[0], 0, paras[0], 1], node detachedComment 
</span><span class="cx"> PASS 16,18: resulting range position for range [paras[0], 0, paras[0], 1], node detachedComment 
</span><del>-FAIL 16,19: resulting DOM for range [paras[0], 0, paras[0], 1], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 16,19: resulting DOM for range [paras[0], 0, paras[0], 1], node docfrag 
</ins><span class="cx"> PASS 16,19: resulting range position for range [paras[0], 0, paras[0], 1], node docfrag 
</span><del>-FAIL 16,20: resulting DOM for range [paras[0], 0, paras[0], 1], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 16,20: resulting DOM for range [paras[0], 0, paras[0], 1], node doctype 
</ins><span class="cx"> PASS 16,20: resulting range position for range [paras[0], 0, paras[0], 1], node doctype 
</span><del>-FAIL 16,21: resulting DOM for range [paras[0], 0, paras[0], 1], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 16,21: resulting DOM for range [paras[0], 0, paras[0], 1], node foreignDoctype 
</ins><span class="cx"> PASS 16,21: resulting range position for range [paras[0], 0, paras[0], 1], node foreignDoctype 
</span><del>-FAIL 17,0: resulting DOM for range [detachedPara1, 0, detachedPara1, 1], node paras[0] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL 17,0: resulting DOM for range [detachedPara1, 0, detachedPara1, 1], node paras[0] InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS 17,0: resulting range position for range [detachedPara1, 0, detachedPara1, 1], node paras[0] 
</span><span class="cx"> PASS 17,1: resulting DOM for range [detachedPara1, 0, detachedPara1, 1], node paras[0].firstChild 
</span><span class="cx"> PASS 17,1: resulting range position for range [detachedPara1, 0, detachedPara1, 1], node paras[0].firstChild 
</span><span class="cx"> PASS 17,2: resulting DOM for range [detachedPara1, 0, detachedPara1, 1], node paras[1].firstChild 
</span><span class="cx"> PASS 17,2: resulting range position for range [detachedPara1, 0, detachedPara1, 1], node paras[1].firstChild 
</span><del>-FAIL 17,3: resulting DOM for range [detachedPara1, 0, detachedPara1, 1], node foreignPara1 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL 17,3: resulting DOM for range [detachedPara1, 0, detachedPara1, 1], node foreignPara1 InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS 17,3: resulting range position for range [detachedPara1, 0, detachedPara1, 1], node foreignPara1 
</span><span class="cx"> PASS 17,4: resulting DOM for range [detachedPara1, 0, detachedPara1, 1], node foreignPara1.firstChild 
</span><span class="cx"> PASS 17,4: resulting range position for range [detachedPara1, 0, detachedPara1, 1], node foreignPara1.firstChild 
</span><span class="lines">@@ -999,23 +795,17 @@
</span><span class="cx"> FAIL 17,5: resulting range position for range [detachedPara1, 0, detachedPara1, 1], node detachedPara1 assert_true: First differing node: expected Element node &lt;p&gt;Wxyzabcd&lt;/p&gt;, got Text node &quot;Opqrstuv&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> PASS 17,6: resulting DOM for range [detachedPara1, 0, detachedPara1, 1], node detachedPara1.firstChild 
</span><span class="cx"> PASS 17,6: resulting range position for range [detachedPara1, 0, detachedPara1, 1], node detachedPara1.firstChild 
</span><del>-FAIL 17,7: resulting DOM for range [detachedPara1, 0, detachedPara1, 1], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 17,7: resulting DOM for range [detachedPara1, 0, detachedPara1, 1], node document 
</ins><span class="cx"> PASS 17,7: resulting range position for range [detachedPara1, 0, detachedPara1, 1], node document 
</span><span class="cx"> FAIL 17,8: resulting DOM for range [detachedPara1, 0, detachedPara1, 1], node detachedDiv assert_unreached: DOMs were not equal but we couldn't figure out why Reached unreachable code
</span><span class="cx"> FAIL 17,8: resulting range position for range [detachedPara1, 0, detachedPara1, 1], node detachedDiv assert_unreached: DOMs were not equal but we couldn't figure out why Reached unreachable code
</span><del>-FAIL 17,9: resulting DOM for range [detachedPara1, 0, detachedPara1, 1], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 17,9: resulting DOM for range [detachedPara1, 0, detachedPara1, 1], node foreignDoc 
</ins><span class="cx"> PASS 17,9: resulting range position for range [detachedPara1, 0, detachedPara1, 1], node foreignDoc 
</span><del>-FAIL 17,10: resulting DOM for range [detachedPara1, 0, detachedPara1, 1], node foreignPara2 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL 17,10: resulting DOM for range [detachedPara1, 0, detachedPara1, 1], node foreignPara2 InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS 17,10: resulting range position for range [detachedPara1, 0, detachedPara1, 1], node foreignPara2 
</span><del>-FAIL 17,11: resulting DOM for range [detachedPara1, 0, detachedPara1, 1], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 17,11: resulting DOM for range [detachedPara1, 0, detachedPara1, 1], node xmlDoc 
</ins><span class="cx"> PASS 17,11: resulting range position for range [detachedPara1, 0, detachedPara1, 1], node xmlDoc 
</span><del>-FAIL 17,12: resulting DOM for range [detachedPara1, 0, detachedPara1, 1], node xmlElement INVALID_NODE_TYPE_ERR: DOM Range Exception 2
</del><ins>+FAIL 17,12: resulting DOM for range [detachedPara1, 0, detachedPara1, 1], node xmlElement InvalidNodeTypeError: DOM Exception 24
</ins><span class="cx"> PASS 17,12: resulting range position for range [detachedPara1, 0, detachedPara1, 1], node xmlElement 
</span><span class="cx"> PASS 17,13: resulting DOM for range [detachedPara1, 0, detachedPara1, 1], node detachedTextNode 
</span><span class="cx"> PASS 17,13: resulting range position for range [detachedPara1, 0, detachedPara1, 1], node detachedTextNode 
</span><span class="lines">@@ -1029,17 +819,11 @@
</span><span class="cx"> PASS 17,17: resulting range position for range [detachedPara1, 0, detachedPara1, 1], node comment 
</span><span class="cx"> PASS 17,18: resulting DOM for range [detachedPara1, 0, detachedPara1, 1], node detachedComment 
</span><span class="cx"> PASS 17,18: resulting range position for range [detachedPara1, 0, detachedPara1, 1], node detachedComment 
</span><del>-FAIL 17,19: resulting DOM for range [detachedPara1, 0, detachedPara1, 1], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 17,19: resulting DOM for range [detachedPara1, 0, detachedPara1, 1], node docfrag 
</ins><span class="cx"> PASS 17,19: resulting range position for range [detachedPara1, 0, detachedPara1, 1], node docfrag 
</span><del>-FAIL 17,20: resulting DOM for range [detachedPara1, 0, detachedPara1, 1], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 17,20: resulting DOM for range [detachedPara1, 0, detachedPara1, 1], node doctype 
</ins><span class="cx"> PASS 17,20: resulting range position for range [detachedPara1, 0, detachedPara1, 1], node doctype 
</span><del>-FAIL 17,21: resulting DOM for range [detachedPara1, 0, detachedPara1, 1], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 17,21: resulting DOM for range [detachedPara1, 0, detachedPara1, 1], node foreignDoctype 
</ins><span class="cx"> PASS 17,21: resulting range position for range [detachedPara1, 0, detachedPara1, 1], node foreignDoctype 
</span><span class="cx"> FAIL 18,0: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node paras[0] assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><span class="lines">@@ -1049,85 +833,57 @@
</span><span class="cx">         try {
</span><span class="cx">           actualRange.surroun...&quot; threw object &quot;Error: HierarchyRequestError: DOM Exception 3&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 3, expected 11
</span><span class="cx"> PASS 18,1: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node paras[0].firstChild 
</span><del>-FAIL 18,2: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node paras[1].firstChild assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 18,2: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node paras[1].firstChild 
</ins><span class="cx"> PASS 18,2: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node paras[1].firstChild 
</span><del>-FAIL 18,3: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node foreignPara1 assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 18,3: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node foreignPara1 
</ins><span class="cx"> PASS 18,3: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node foreignPara1 
</span><del>-FAIL 18,4: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node foreignPara1.firstChild assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 18,4: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node foreignPara1.firstChild 
</ins><span class="cx"> PASS 18,4: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node foreignPara1.firstChild 
</span><del>-FAIL 18,5: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node detachedPara1 assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 18,5: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node detachedPara1 
</ins><span class="cx"> PASS 18,5: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node detachedPara1 
</span><del>-FAIL 18,6: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node detachedPara1.firstChild assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 18,6: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node detachedPara1.firstChild 
</ins><span class="cx"> PASS 18,6: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node detachedPara1.firstChild 
</span><span class="cx"> FAIL 18,7: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node document assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 18,7: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node document 
</span><del>-FAIL 18,8: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node detachedDiv assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 18,8: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node detachedDiv 
</ins><span class="cx"> PASS 18,8: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node detachedDiv 
</span><span class="cx"> FAIL 18,9: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node foreignDoc assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 18,9: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node foreignDoc 
</span><del>-FAIL 18,10: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node foreignPara2 assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 18,10: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node foreignPara2 
</ins><span class="cx"> PASS 18,10: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node foreignPara2 
</span><span class="cx"> FAIL 18,11: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node xmlDoc assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 18,11: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node xmlDoc 
</span><del>-FAIL 18,12: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node xmlElement assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 18,12: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node xmlElement 
</ins><span class="cx"> PASS 18,12: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node xmlElement 
</span><del>-FAIL 18,13: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node detachedTextNode assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 18,13: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node detachedTextNode 
</ins><span class="cx"> PASS 18,13: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node detachedTextNode 
</span><del>-FAIL 18,14: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node foreignTextNode assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 18,14: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node foreignTextNode 
</ins><span class="cx"> PASS 18,14: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node foreignTextNode 
</span><del>-FAIL 18,15: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node processingInstruction assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 18,15: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node processingInstruction 
</ins><span class="cx"> PASS 18,15: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node processingInstruction 
</span><del>-FAIL 18,16: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node detachedProcessingInstruction assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 18,16: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node detachedProcessingInstruction 
</ins><span class="cx"> PASS 18,16: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node detachedProcessingInstruction 
</span><del>-FAIL 18,17: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node comment assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 18,17: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node comment 
</ins><span class="cx"> PASS 18,17: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node comment 
</span><del>-FAIL 18,18: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node detachedComment assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 18,18: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node detachedComment 
</ins><span class="cx"> PASS 18,18: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node detachedComment 
</span><span class="cx"> FAIL 18,19: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node docfrag assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 18,19: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node docfrag 
</span><span class="cx"> FAIL 18,20: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node doctype assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 18,20: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node doctype 
</span><span class="cx"> FAIL 18,21: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node foreignDoctype assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 18,21: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 0], node foreignDoctype 
</span><span class="cx"> FAIL 19,0: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node paras[0] assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><span class="lines">@@ -1137,85 +893,57 @@
</span><span class="cx">         try {
</span><span class="cx">           actualRange.surroun...&quot; threw object &quot;Error: HierarchyRequestError: DOM Exception 3&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 3, expected 11
</span><span class="cx"> PASS 19,1: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node paras[0].firstChild 
</span><del>-FAIL 19,2: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node paras[1].firstChild assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 19,2: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node paras[1].firstChild 
</ins><span class="cx"> PASS 19,2: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node paras[1].firstChild 
</span><del>-FAIL 19,3: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node foreignPara1 assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 19,3: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node foreignPara1 
</ins><span class="cx"> PASS 19,3: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node foreignPara1 
</span><del>-FAIL 19,4: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node foreignPara1.firstChild assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 19,4: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node foreignPara1.firstChild 
</ins><span class="cx"> PASS 19,4: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node foreignPara1.firstChild 
</span><del>-FAIL 19,5: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node detachedPara1 assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 19,5: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node detachedPara1 
</ins><span class="cx"> PASS 19,5: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node detachedPara1 
</span><del>-FAIL 19,6: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node detachedPara1.firstChild assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 19,6: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node detachedPara1.firstChild 
</ins><span class="cx"> PASS 19,6: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node detachedPara1.firstChild 
</span><span class="cx"> FAIL 19,7: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node document assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 19,7: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node document 
</span><del>-FAIL 19,8: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node detachedDiv assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 19,8: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node detachedDiv 
</ins><span class="cx"> PASS 19,8: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node detachedDiv 
</span><span class="cx"> FAIL 19,9: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node foreignDoc assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 19,9: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node foreignDoc 
</span><del>-FAIL 19,10: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node foreignPara2 assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 19,10: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node foreignPara2 
</ins><span class="cx"> PASS 19,10: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node foreignPara2 
</span><span class="cx"> FAIL 19,11: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node xmlDoc assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 19,11: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node xmlDoc 
</span><del>-FAIL 19,12: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node xmlElement assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 19,12: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node xmlElement 
</ins><span class="cx"> PASS 19,12: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node xmlElement 
</span><del>-FAIL 19,13: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node detachedTextNode assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 19,13: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node detachedTextNode 
</ins><span class="cx"> PASS 19,13: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node detachedTextNode 
</span><del>-FAIL 19,14: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node foreignTextNode assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 19,14: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node foreignTextNode 
</ins><span class="cx"> PASS 19,14: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node foreignTextNode 
</span><del>-FAIL 19,15: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node processingInstruction assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 19,15: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node processingInstruction 
</ins><span class="cx"> PASS 19,15: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node processingInstruction 
</span><del>-FAIL 19,16: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node detachedProcessingInstruction assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 19,16: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node detachedProcessingInstruction 
</ins><span class="cx"> PASS 19,16: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node detachedProcessingInstruction 
</span><del>-FAIL 19,17: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node comment assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 19,17: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node comment 
</ins><span class="cx"> PASS 19,17: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node comment 
</span><del>-FAIL 19,18: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node detachedComment assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 19,18: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node detachedComment 
</ins><span class="cx"> PASS 19,18: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node detachedComment 
</span><span class="cx"> FAIL 19,19: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node docfrag assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 19,19: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node docfrag 
</span><span class="cx"> FAIL 19,20: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node doctype assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 19,20: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node doctype 
</span><span class="cx"> FAIL 19,21: resulting DOM for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node foreignDoctype assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 19,21: resulting range position for range [paras[0].firstChild, 0, paras[1].firstChild, 8], node foreignDoctype 
</span><span class="cx"> FAIL 20,0: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node paras[0] assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><span class="lines">@@ -1225,85 +953,57 @@
</span><span class="cx">         try {
</span><span class="cx">           actualRange.surroun...&quot; threw object &quot;Error: HierarchyRequestError: DOM Exception 3&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 3, expected 11
</span><span class="cx"> PASS 20,1: resulting range position for range [paras[0].firstChild, 3, paras[3], 1], node paras[0].firstChild 
</span><del>-FAIL 20,2: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node paras[1].firstChild assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 20,2: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node paras[1].firstChild 
</ins><span class="cx"> PASS 20,2: resulting range position for range [paras[0].firstChild, 3, paras[3], 1], node paras[1].firstChild 
</span><del>-FAIL 20,3: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node foreignPara1 assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 20,3: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node foreignPara1 
</ins><span class="cx"> PASS 20,3: resulting range position for range [paras[0].firstChild, 3, paras[3], 1], node foreignPara1 
</span><del>-FAIL 20,4: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node foreignPara1.firstChild assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 20,4: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node foreignPara1.firstChild 
</ins><span class="cx"> PASS 20,4: resulting range position for range [paras[0].firstChild, 3, paras[3], 1], node foreignPara1.firstChild 
</span><del>-FAIL 20,5: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node detachedPara1 assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 20,5: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node detachedPara1 
</ins><span class="cx"> PASS 20,5: resulting range position for range [paras[0].firstChild, 3, paras[3], 1], node detachedPara1 
</span><del>-FAIL 20,6: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node detachedPara1.firstChild assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 20,6: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node detachedPara1.firstChild 
</ins><span class="cx"> PASS 20,6: resulting range position for range [paras[0].firstChild, 3, paras[3], 1], node detachedPara1.firstChild 
</span><span class="cx"> FAIL 20,7: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node document assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 20,7: resulting range position for range [paras[0].firstChild, 3, paras[3], 1], node document 
</span><del>-FAIL 20,8: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node detachedDiv assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 20,8: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node detachedDiv 
</ins><span class="cx"> PASS 20,8: resulting range position for range [paras[0].firstChild, 3, paras[3], 1], node detachedDiv 
</span><span class="cx"> FAIL 20,9: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node foreignDoc assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 20,9: resulting range position for range [paras[0].firstChild, 3, paras[3], 1], node foreignDoc 
</span><del>-FAIL 20,10: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node foreignPara2 assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 20,10: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node foreignPara2 
</ins><span class="cx"> PASS 20,10: resulting range position for range [paras[0].firstChild, 3, paras[3], 1], node foreignPara2 
</span><span class="cx"> FAIL 20,11: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node xmlDoc assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 20,11: resulting range position for range [paras[0].firstChild, 3, paras[3], 1], node xmlDoc 
</span><del>-FAIL 20,12: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node xmlElement assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 20,12: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node xmlElement 
</ins><span class="cx"> PASS 20,12: resulting range position for range [paras[0].firstChild, 3, paras[3], 1], node xmlElement 
</span><del>-FAIL 20,13: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node detachedTextNode assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 20,13: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node detachedTextNode 
</ins><span class="cx"> PASS 20,13: resulting range position for range [paras[0].firstChild, 3, paras[3], 1], node detachedTextNode 
</span><del>-FAIL 20,14: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node foreignTextNode assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 20,14: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node foreignTextNode 
</ins><span class="cx"> PASS 20,14: resulting range position for range [paras[0].firstChild, 3, paras[3], 1], node foreignTextNode 
</span><del>-FAIL 20,15: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node processingInstruction assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 20,15: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node processingInstruction 
</ins><span class="cx"> PASS 20,15: resulting range position for range [paras[0].firstChild, 3, paras[3], 1], node processingInstruction 
</span><del>-FAIL 20,16: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node detachedProcessingInstruction assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 20,16: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node detachedProcessingInstruction 
</ins><span class="cx"> PASS 20,16: resulting range position for range [paras[0].firstChild, 3, paras[3], 1], node detachedProcessingInstruction 
</span><del>-FAIL 20,17: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node comment assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 20,17: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node comment 
</ins><span class="cx"> PASS 20,17: resulting range position for range [paras[0].firstChild, 3, paras[3], 1], node comment 
</span><del>-FAIL 20,18: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node detachedComment assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 20,18: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node detachedComment 
</ins><span class="cx"> PASS 20,18: resulting range position for range [paras[0].firstChild, 3, paras[3], 1], node detachedComment 
</span><span class="cx"> FAIL 20,19: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node docfrag assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 20,19: resulting range position for range [paras[0].firstChild, 3, paras[3], 1], node docfrag 
</span><span class="cx"> FAIL 20,20: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node doctype assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 20,20: resulting range position for range [paras[0].firstChild, 3, paras[3], 1], node doctype 
</span><span class="cx"> FAIL 20,21: resulting DOM for range [paras[0].firstChild, 3, paras[3], 1], node foreignDoctype assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 20,21: resulting range position for range [paras[0].firstChild, 3, paras[3], 1], node foreignDoctype 
</span><span class="cx"> FAIL 21,0: resulting DOM for range [paras[0], 0, paras[0].firstChild, 7], node paras[0] assert_true: First differing node: expected Element node &lt;p id=&quot;b&quot; style=&quot;display:none&quot;&gt;Ijklmnop
</span><span class="cx"> &lt;/p&gt;, got Text node &quot;Äb̈c̈d̈ëf̈g̈ḧ
</span><span class="lines">@@ -1323,21 +1023,15 @@
</span><span class="cx"> PASS 21,5: resulting range position for range [paras[0], 0, paras[0].firstChild, 7], node detachedPara1 
</span><span class="cx"> PASS 21,6: resulting DOM for range [paras[0], 0, paras[0].firstChild, 7], node detachedPara1.firstChild 
</span><span class="cx"> PASS 21,6: resulting range position for range [paras[0], 0, paras[0].firstChild, 7], node detachedPara1.firstChild 
</span><del>-FAIL 21,7: resulting DOM for range [paras[0], 0, paras[0].firstChild, 7], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 21,7: resulting DOM for range [paras[0], 0, paras[0].firstChild, 7], node document 
</ins><span class="cx"> PASS 21,7: resulting range position for range [paras[0], 0, paras[0].firstChild, 7], node document 
</span><span class="cx"> PASS 21,8: resulting DOM for range [paras[0], 0, paras[0].firstChild, 7], node detachedDiv 
</span><span class="cx"> PASS 21,8: resulting range position for range [paras[0], 0, paras[0].firstChild, 7], node detachedDiv 
</span><del>-FAIL 21,9: resulting DOM for range [paras[0], 0, paras[0].firstChild, 7], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 21,9: resulting DOM for range [paras[0], 0, paras[0].firstChild, 7], node foreignDoc 
</ins><span class="cx"> PASS 21,9: resulting range position for range [paras[0], 0, paras[0].firstChild, 7], node foreignDoc 
</span><span class="cx"> PASS 21,10: resulting DOM for range [paras[0], 0, paras[0].firstChild, 7], node foreignPara2 
</span><span class="cx"> PASS 21,10: resulting range position for range [paras[0], 0, paras[0].firstChild, 7], node foreignPara2 
</span><del>-FAIL 21,11: resulting DOM for range [paras[0], 0, paras[0].firstChild, 7], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 21,11: resulting DOM for range [paras[0], 0, paras[0].firstChild, 7], node xmlDoc 
</ins><span class="cx"> PASS 21,11: resulting range position for range [paras[0], 0, paras[0].firstChild, 7], node xmlDoc 
</span><span class="cx"> PASS 21,12: resulting DOM for range [paras[0], 0, paras[0].firstChild, 7], node xmlElement 
</span><span class="cx"> PASS 21,12: resulting range position for range [paras[0], 0, paras[0].firstChild, 7], node xmlElement 
</span><span class="lines">@@ -1353,105 +1047,67 @@
</span><span class="cx"> PASS 21,17: resulting range position for range [paras[0], 0, paras[0].firstChild, 7], node comment 
</span><span class="cx"> PASS 21,18: resulting DOM for range [paras[0], 0, paras[0].firstChild, 7], node detachedComment 
</span><span class="cx"> PASS 21,18: resulting range position for range [paras[0], 0, paras[0].firstChild, 7], node detachedComment 
</span><del>-FAIL 21,19: resulting DOM for range [paras[0], 0, paras[0].firstChild, 7], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 21,19: resulting DOM for range [paras[0], 0, paras[0].firstChild, 7], node docfrag 
</ins><span class="cx"> PASS 21,19: resulting range position for range [paras[0], 0, paras[0].firstChild, 7], node docfrag 
</span><del>-FAIL 21,20: resulting DOM for range [paras[0], 0, paras[0].firstChild, 7], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 21,20: resulting DOM for range [paras[0], 0, paras[0].firstChild, 7], node doctype 
</ins><span class="cx"> PASS 21,20: resulting range position for range [paras[0], 0, paras[0].firstChild, 7], node doctype 
</span><del>-FAIL 21,21: resulting DOM for range [paras[0], 0, paras[0].firstChild, 7], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 21,21: resulting DOM for range [paras[0], 0, paras[0].firstChild, 7], node foreignDoctype 
</ins><span class="cx"> PASS 21,21: resulting range position for range [paras[0], 0, paras[0].firstChild, 7], node foreignDoctype 
</span><del>-FAIL 22,0: resulting DOM for range [testDiv, 2, paras[4], 1], node paras[0] assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 22,0: resulting DOM for range [testDiv, 2, paras[4], 1], node paras[0] 
</ins><span class="cx"> PASS 22,0: resulting range position for range [testDiv, 2, paras[4], 1], node paras[0] 
</span><del>-FAIL 22,1: resulting DOM for range [testDiv, 2, paras[4], 1], node paras[0].firstChild assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 22,1: resulting DOM for range [testDiv, 2, paras[4], 1], node paras[0].firstChild 
</ins><span class="cx"> PASS 22,1: resulting range position for range [testDiv, 2, paras[4], 1], node paras[0].firstChild 
</span><del>-FAIL 22,2: resulting DOM for range [testDiv, 2, paras[4], 1], node paras[1].firstChild assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 22,2: resulting DOM for range [testDiv, 2, paras[4], 1], node paras[1].firstChild 
</ins><span class="cx"> PASS 22,2: resulting range position for range [testDiv, 2, paras[4], 1], node paras[1].firstChild 
</span><del>-FAIL 22,3: resulting DOM for range [testDiv, 2, paras[4], 1], node foreignPara1 assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 22,3: resulting DOM for range [testDiv, 2, paras[4], 1], node foreignPara1 
</ins><span class="cx"> PASS 22,3: resulting range position for range [testDiv, 2, paras[4], 1], node foreignPara1 
</span><del>-FAIL 22,4: resulting DOM for range [testDiv, 2, paras[4], 1], node foreignPara1.firstChild assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 22,4: resulting DOM for range [testDiv, 2, paras[4], 1], node foreignPara1.firstChild 
</ins><span class="cx"> PASS 22,4: resulting range position for range [testDiv, 2, paras[4], 1], node foreignPara1.firstChild 
</span><del>-FAIL 22,5: resulting DOM for range [testDiv, 2, paras[4], 1], node detachedPara1 assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 22,5: resulting DOM for range [testDiv, 2, paras[4], 1], node detachedPara1 
</ins><span class="cx"> PASS 22,5: resulting range position for range [testDiv, 2, paras[4], 1], node detachedPara1 
</span><del>-FAIL 22,6: resulting DOM for range [testDiv, 2, paras[4], 1], node detachedPara1.firstChild assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 22,6: resulting DOM for range [testDiv, 2, paras[4], 1], node detachedPara1.firstChild 
</ins><span class="cx"> PASS 22,6: resulting range position for range [testDiv, 2, paras[4], 1], node detachedPara1.firstChild 
</span><span class="cx"> FAIL 22,7: resulting DOM for range [testDiv, 2, paras[4], 1], node document assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 22,7: resulting range position for range [testDiv, 2, paras[4], 1], node document 
</span><del>-FAIL 22,8: resulting DOM for range [testDiv, 2, paras[4], 1], node detachedDiv assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 22,8: resulting DOM for range [testDiv, 2, paras[4], 1], node detachedDiv 
</ins><span class="cx"> PASS 22,8: resulting range position for range [testDiv, 2, paras[4], 1], node detachedDiv 
</span><span class="cx"> FAIL 22,9: resulting DOM for range [testDiv, 2, paras[4], 1], node foreignDoc assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 22,9: resulting range position for range [testDiv, 2, paras[4], 1], node foreignDoc 
</span><del>-FAIL 22,10: resulting DOM for range [testDiv, 2, paras[4], 1], node foreignPara2 assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 22,10: resulting DOM for range [testDiv, 2, paras[4], 1], node foreignPara2 
</ins><span class="cx"> PASS 22,10: resulting range position for range [testDiv, 2, paras[4], 1], node foreignPara2 
</span><span class="cx"> FAIL 22,11: resulting DOM for range [testDiv, 2, paras[4], 1], node xmlDoc assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 22,11: resulting range position for range [testDiv, 2, paras[4], 1], node xmlDoc 
</span><del>-FAIL 22,12: resulting DOM for range [testDiv, 2, paras[4], 1], node xmlElement assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 22,12: resulting DOM for range [testDiv, 2, paras[4], 1], node xmlElement 
</ins><span class="cx"> PASS 22,12: resulting range position for range [testDiv, 2, paras[4], 1], node xmlElement 
</span><del>-FAIL 22,13: resulting DOM for range [testDiv, 2, paras[4], 1], node detachedTextNode assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 22,13: resulting DOM for range [testDiv, 2, paras[4], 1], node detachedTextNode 
</ins><span class="cx"> PASS 22,13: resulting range position for range [testDiv, 2, paras[4], 1], node detachedTextNode 
</span><del>-FAIL 22,14: resulting DOM for range [testDiv, 2, paras[4], 1], node foreignTextNode assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 22,14: resulting DOM for range [testDiv, 2, paras[4], 1], node foreignTextNode 
</ins><span class="cx"> PASS 22,14: resulting range position for range [testDiv, 2, paras[4], 1], node foreignTextNode 
</span><del>-FAIL 22,15: resulting DOM for range [testDiv, 2, paras[4], 1], node processingInstruction assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 22,15: resulting DOM for range [testDiv, 2, paras[4], 1], node processingInstruction 
</ins><span class="cx"> PASS 22,15: resulting range position for range [testDiv, 2, paras[4], 1], node processingInstruction 
</span><del>-FAIL 22,16: resulting DOM for range [testDiv, 2, paras[4], 1], node detachedProcessingInstruction assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 22,16: resulting DOM for range [testDiv, 2, paras[4], 1], node detachedProcessingInstruction 
</ins><span class="cx"> PASS 22,16: resulting range position for range [testDiv, 2, paras[4], 1], node detachedProcessingInstruction 
</span><del>-FAIL 22,17: resulting DOM for range [testDiv, 2, paras[4], 1], node comment assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 22,17: resulting DOM for range [testDiv, 2, paras[4], 1], node comment 
</ins><span class="cx"> PASS 22,17: resulting range position for range [testDiv, 2, paras[4], 1], node comment 
</span><del>-FAIL 22,18: resulting DOM for range [testDiv, 2, paras[4], 1], node detachedComment assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 22,18: resulting DOM for range [testDiv, 2, paras[4], 1], node detachedComment 
</ins><span class="cx"> PASS 22,18: resulting range position for range [testDiv, 2, paras[4], 1], node detachedComment 
</span><span class="cx"> FAIL 22,19: resulting DOM for range [testDiv, 2, paras[4], 1], node docfrag assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 22,19: resulting range position for range [testDiv, 2, paras[4], 1], node docfrag 
</span><span class="cx"> FAIL 22,20: resulting DOM for range [testDiv, 2, paras[4], 1], node doctype assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 22,20: resulting range position for range [testDiv, 2, paras[4], 1], node doctype 
</span><span class="cx"> FAIL 22,21: resulting DOM for range [testDiv, 2, paras[4], 1], node foreignDoctype assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 22,21: resulting range position for range [testDiv, 2, paras[4], 1], node foreignDoctype 
</span><span class="cx"> PASS 23,0: resulting DOM for range [document, 0, document, 1], node paras[0] 
</span><span class="cx"> PASS 23,0: resulting range position for range [document, 0, document, 1], node paras[0] 
</span><span class="lines">@@ -1467,21 +1123,15 @@
</span><span class="cx"> PASS 23,5: resulting range position for range [document, 0, document, 1], node detachedPara1 
</span><span class="cx"> PASS 23,6: resulting DOM for range [document, 0, document, 1], node detachedPara1.firstChild 
</span><span class="cx"> PASS 23,6: resulting range position for range [document, 0, document, 1], node detachedPara1.firstChild 
</span><del>-FAIL 23,7: resulting DOM for range [document, 0, document, 1], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 23,7: resulting DOM for range [document, 0, document, 1], node document 
</ins><span class="cx"> PASS 23,7: resulting range position for range [document, 0, document, 1], node document 
</span><span class="cx"> PASS 23,8: resulting DOM for range [document, 0, document, 1], node detachedDiv 
</span><span class="cx"> PASS 23,8: resulting range position for range [document, 0, document, 1], node detachedDiv 
</span><del>-FAIL 23,9: resulting DOM for range [document, 0, document, 1], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 23,9: resulting DOM for range [document, 0, document, 1], node foreignDoc 
</ins><span class="cx"> PASS 23,9: resulting range position for range [document, 0, document, 1], node foreignDoc 
</span><span class="cx"> PASS 23,10: resulting DOM for range [document, 0, document, 1], node foreignPara2 
</span><span class="cx"> PASS 23,10: resulting range position for range [document, 0, document, 1], node foreignPara2 
</span><del>-FAIL 23,11: resulting DOM for range [document, 0, document, 1], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 23,11: resulting DOM for range [document, 0, document, 1], node xmlDoc 
</ins><span class="cx"> PASS 23,11: resulting range position for range [document, 0, document, 1], node xmlDoc 
</span><span class="cx"> PASS 23,12: resulting DOM for range [document, 0, document, 1], node xmlElement 
</span><span class="cx"> PASS 23,12: resulting range position for range [document, 0, document, 1], node xmlElement 
</span><span class="lines">@@ -1497,17 +1147,11 @@
</span><span class="cx"> PASS 23,17: resulting range position for range [document, 0, document, 1], node comment 
</span><span class="cx"> PASS 23,18: resulting DOM for range [document, 0, document, 1], node detachedComment 
</span><span class="cx"> PASS 23,18: resulting range position for range [document, 0, document, 1], node detachedComment 
</span><del>-FAIL 23,19: resulting DOM for range [document, 0, document, 1], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 23,19: resulting DOM for range [document, 0, document, 1], node docfrag 
</ins><span class="cx"> PASS 23,19: resulting range position for range [document, 0, document, 1], node docfrag 
</span><del>-FAIL 23,20: resulting DOM for range [document, 0, document, 1], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 23,20: resulting DOM for range [document, 0, document, 1], node doctype 
</ins><span class="cx"> PASS 23,20: resulting range position for range [document, 0, document, 1], node doctype 
</span><del>-FAIL 23,21: resulting DOM for range [document, 0, document, 1], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 23,21: resulting DOM for range [document, 0, document, 1], node foreignDoctype 
</ins><span class="cx"> PASS 23,21: resulting range position for range [document, 0, document, 1], node foreignDoctype 
</span><span class="cx"> PASS 24,0: resulting DOM for range [document, 0, document, 2], node paras[0] 
</span><span class="cx"> PASS 24,0: resulting range position for range [document, 0, document, 2], node paras[0] 
</span><span class="lines">@@ -1523,21 +1167,15 @@
</span><span class="cx"> PASS 24,5: resulting range position for range [document, 0, document, 2], node detachedPara1 
</span><span class="cx"> PASS 24,6: resulting DOM for range [document, 0, document, 2], node detachedPara1.firstChild 
</span><span class="cx"> PASS 24,6: resulting range position for range [document, 0, document, 2], node detachedPara1.firstChild 
</span><del>-FAIL 24,7: resulting DOM for range [document, 0, document, 2], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 24,7: resulting DOM for range [document, 0, document, 2], node document 
</ins><span class="cx"> PASS 24,7: resulting range position for range [document, 0, document, 2], node document 
</span><span class="cx"> PASS 24,8: resulting DOM for range [document, 0, document, 2], node detachedDiv 
</span><span class="cx"> PASS 24,8: resulting range position for range [document, 0, document, 2], node detachedDiv 
</span><del>-FAIL 24,9: resulting DOM for range [document, 0, document, 2], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 24,9: resulting DOM for range [document, 0, document, 2], node foreignDoc 
</ins><span class="cx"> PASS 24,9: resulting range position for range [document, 0, document, 2], node foreignDoc 
</span><span class="cx"> PASS 24,10: resulting DOM for range [document, 0, document, 2], node foreignPara2 
</span><span class="cx"> PASS 24,10: resulting range position for range [document, 0, document, 2], node foreignPara2 
</span><del>-FAIL 24,11: resulting DOM for range [document, 0, document, 2], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 24,11: resulting DOM for range [document, 0, document, 2], node xmlDoc 
</ins><span class="cx"> PASS 24,11: resulting range position for range [document, 0, document, 2], node xmlDoc 
</span><span class="cx"> PASS 24,12: resulting DOM for range [document, 0, document, 2], node xmlElement 
</span><span class="cx"> PASS 24,12: resulting range position for range [document, 0, document, 2], node xmlElement 
</span><span class="lines">@@ -1553,17 +1191,11 @@
</span><span class="cx"> PASS 24,17: resulting range position for range [document, 0, document, 2], node comment 
</span><span class="cx"> PASS 24,18: resulting DOM for range [document, 0, document, 2], node detachedComment 
</span><span class="cx"> PASS 24,18: resulting range position for range [document, 0, document, 2], node detachedComment 
</span><del>-FAIL 24,19: resulting DOM for range [document, 0, document, 2], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 24,19: resulting DOM for range [document, 0, document, 2], node docfrag 
</ins><span class="cx"> PASS 24,19: resulting range position for range [document, 0, document, 2], node docfrag 
</span><del>-FAIL 24,20: resulting DOM for range [document, 0, document, 2], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 24,20: resulting DOM for range [document, 0, document, 2], node doctype 
</ins><span class="cx"> PASS 24,20: resulting range position for range [document, 0, document, 2], node doctype 
</span><del>-FAIL 24,21: resulting DOM for range [document, 0, document, 2], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 24,21: resulting DOM for range [document, 0, document, 2], node foreignDoctype 
</ins><span class="cx"> PASS 24,21: resulting range position for range [document, 0, document, 2], node foreignDoctype 
</span><span class="cx"> PASS 25,0: resulting DOM for range [comment, 2, comment, 3], node paras[0] 
</span><span class="cx"> PASS 25,0: resulting range position for range [comment, 2, comment, 3], node paras[0] 
</span><span class="lines">@@ -1579,21 +1211,15 @@
</span><span class="cx"> PASS 25,5: resulting range position for range [comment, 2, comment, 3], node detachedPara1 
</span><span class="cx"> PASS 25,6: resulting DOM for range [comment, 2, comment, 3], node detachedPara1.firstChild 
</span><span class="cx"> PASS 25,6: resulting range position for range [comment, 2, comment, 3], node detachedPara1.firstChild 
</span><del>-FAIL 25,7: resulting DOM for range [comment, 2, comment, 3], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 25,7: resulting DOM for range [comment, 2, comment, 3], node document 
</ins><span class="cx"> PASS 25,7: resulting range position for range [comment, 2, comment, 3], node document 
</span><span class="cx"> PASS 25,8: resulting DOM for range [comment, 2, comment, 3], node detachedDiv 
</span><span class="cx"> PASS 25,8: resulting range position for range [comment, 2, comment, 3], node detachedDiv 
</span><del>-FAIL 25,9: resulting DOM for range [comment, 2, comment, 3], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 25,9: resulting DOM for range [comment, 2, comment, 3], node foreignDoc 
</ins><span class="cx"> PASS 25,9: resulting range position for range [comment, 2, comment, 3], node foreignDoc 
</span><span class="cx"> PASS 25,10: resulting DOM for range [comment, 2, comment, 3], node foreignPara2 
</span><span class="cx"> PASS 25,10: resulting range position for range [comment, 2, comment, 3], node foreignPara2 
</span><del>-FAIL 25,11: resulting DOM for range [comment, 2, comment, 3], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 25,11: resulting DOM for range [comment, 2, comment, 3], node xmlDoc 
</ins><span class="cx"> PASS 25,11: resulting range position for range [comment, 2, comment, 3], node xmlDoc 
</span><span class="cx"> PASS 25,12: resulting DOM for range [comment, 2, comment, 3], node xmlElement 
</span><span class="cx"> PASS 25,12: resulting range position for range [comment, 2, comment, 3], node xmlElement 
</span><span class="lines">@@ -1609,105 +1235,67 @@
</span><span class="cx"> FAIL 25,17: resulting range position for range [comment, 2, comment, 3], node comment assert_true: First differing node: expected Comment node &lt;!--Alhabet soup?--&gt;, got Comment node &lt;!--Alphabet soup?--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> PASS 25,18: resulting DOM for range [comment, 2, comment, 3], node detachedComment 
</span><span class="cx"> PASS 25,18: resulting range position for range [comment, 2, comment, 3], node detachedComment 
</span><del>-FAIL 25,19: resulting DOM for range [comment, 2, comment, 3], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 25,19: resulting DOM for range [comment, 2, comment, 3], node docfrag 
</ins><span class="cx"> PASS 25,19: resulting range position for range [comment, 2, comment, 3], node docfrag 
</span><del>-FAIL 25,20: resulting DOM for range [comment, 2, comment, 3], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 25,20: resulting DOM for range [comment, 2, comment, 3], node doctype 
</ins><span class="cx"> PASS 25,20: resulting range position for range [comment, 2, comment, 3], node doctype 
</span><del>-FAIL 25,21: resulting DOM for range [comment, 2, comment, 3], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 25,21: resulting DOM for range [comment, 2, comment, 3], node foreignDoctype 
</ins><span class="cx"> PASS 25,21: resulting range position for range [comment, 2, comment, 3], node foreignDoctype 
</span><del>-FAIL 26,0: resulting DOM for range [testDiv, 0, comment, 5], node paras[0] assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 26,0: resulting DOM for range [testDiv, 0, comment, 5], node paras[0] 
</ins><span class="cx"> PASS 26,0: resulting range position for range [testDiv, 0, comment, 5], node paras[0] 
</span><del>-FAIL 26,1: resulting DOM for range [testDiv, 0, comment, 5], node paras[0].firstChild assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 26,1: resulting DOM for range [testDiv, 0, comment, 5], node paras[0].firstChild 
</ins><span class="cx"> PASS 26,1: resulting range position for range [testDiv, 0, comment, 5], node paras[0].firstChild 
</span><del>-FAIL 26,2: resulting DOM for range [testDiv, 0, comment, 5], node paras[1].firstChild assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 26,2: resulting DOM for range [testDiv, 0, comment, 5], node paras[1].firstChild 
</ins><span class="cx"> PASS 26,2: resulting range position for range [testDiv, 0, comment, 5], node paras[1].firstChild 
</span><del>-FAIL 26,3: resulting DOM for range [testDiv, 0, comment, 5], node foreignPara1 assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 26,3: resulting DOM for range [testDiv, 0, comment, 5], node foreignPara1 
</ins><span class="cx"> PASS 26,3: resulting range position for range [testDiv, 0, comment, 5], node foreignPara1 
</span><del>-FAIL 26,4: resulting DOM for range [testDiv, 0, comment, 5], node foreignPara1.firstChild assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 26,4: resulting DOM for range [testDiv, 0, comment, 5], node foreignPara1.firstChild 
</ins><span class="cx"> PASS 26,4: resulting range position for range [testDiv, 0, comment, 5], node foreignPara1.firstChild 
</span><del>-FAIL 26,5: resulting DOM for range [testDiv, 0, comment, 5], node detachedPara1 assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 26,5: resulting DOM for range [testDiv, 0, comment, 5], node detachedPara1 
</ins><span class="cx"> PASS 26,5: resulting range position for range [testDiv, 0, comment, 5], node detachedPara1 
</span><del>-FAIL 26,6: resulting DOM for range [testDiv, 0, comment, 5], node detachedPara1.firstChild assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 26,6: resulting DOM for range [testDiv, 0, comment, 5], node detachedPara1.firstChild 
</ins><span class="cx"> PASS 26,6: resulting range position for range [testDiv, 0, comment, 5], node detachedPara1.firstChild 
</span><span class="cx"> FAIL 26,7: resulting DOM for range [testDiv, 0, comment, 5], node document assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 26,7: resulting range position for range [testDiv, 0, comment, 5], node document 
</span><del>-FAIL 26,8: resulting DOM for range [testDiv, 0, comment, 5], node detachedDiv assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 26,8: resulting DOM for range [testDiv, 0, comment, 5], node detachedDiv 
</ins><span class="cx"> PASS 26,8: resulting range position for range [testDiv, 0, comment, 5], node detachedDiv 
</span><span class="cx"> FAIL 26,9: resulting DOM for range [testDiv, 0, comment, 5], node foreignDoc assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 26,9: resulting range position for range [testDiv, 0, comment, 5], node foreignDoc 
</span><del>-FAIL 26,10: resulting DOM for range [testDiv, 0, comment, 5], node foreignPara2 assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 26,10: resulting DOM for range [testDiv, 0, comment, 5], node foreignPara2 
</ins><span class="cx"> PASS 26,10: resulting range position for range [testDiv, 0, comment, 5], node foreignPara2 
</span><span class="cx"> FAIL 26,11: resulting DOM for range [testDiv, 0, comment, 5], node xmlDoc assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 26,11: resulting range position for range [testDiv, 0, comment, 5], node xmlDoc 
</span><del>-FAIL 26,12: resulting DOM for range [testDiv, 0, comment, 5], node xmlElement assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 26,12: resulting DOM for range [testDiv, 0, comment, 5], node xmlElement 
</ins><span class="cx"> PASS 26,12: resulting range position for range [testDiv, 0, comment, 5], node xmlElement 
</span><del>-FAIL 26,13: resulting DOM for range [testDiv, 0, comment, 5], node detachedTextNode assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 26,13: resulting DOM for range [testDiv, 0, comment, 5], node detachedTextNode 
</ins><span class="cx"> PASS 26,13: resulting range position for range [testDiv, 0, comment, 5], node detachedTextNode 
</span><del>-FAIL 26,14: resulting DOM for range [testDiv, 0, comment, 5], node foreignTextNode assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 26,14: resulting DOM for range [testDiv, 0, comment, 5], node foreignTextNode 
</ins><span class="cx"> PASS 26,14: resulting range position for range [testDiv, 0, comment, 5], node foreignTextNode 
</span><del>-FAIL 26,15: resulting DOM for range [testDiv, 0, comment, 5], node processingInstruction assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 26,15: resulting DOM for range [testDiv, 0, comment, 5], node processingInstruction 
</ins><span class="cx"> PASS 26,15: resulting range position for range [testDiv, 0, comment, 5], node processingInstruction 
</span><del>-FAIL 26,16: resulting DOM for range [testDiv, 0, comment, 5], node detachedProcessingInstruction assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 26,16: resulting DOM for range [testDiv, 0, comment, 5], node detachedProcessingInstruction 
</ins><span class="cx"> PASS 26,16: resulting range position for range [testDiv, 0, comment, 5], node detachedProcessingInstruction 
</span><del>-FAIL 26,17: resulting DOM for range [testDiv, 0, comment, 5], node comment assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 26,17: resulting DOM for range [testDiv, 0, comment, 5], node comment 
</ins><span class="cx"> PASS 26,17: resulting range position for range [testDiv, 0, comment, 5], node comment 
</span><del>-FAIL 26,18: resulting DOM for range [testDiv, 0, comment, 5], node detachedComment assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 26,18: resulting DOM for range [testDiv, 0, comment, 5], node detachedComment 
</ins><span class="cx"> PASS 26,18: resulting range position for range [testDiv, 0, comment, 5], node detachedComment 
</span><span class="cx"> FAIL 26,19: resulting DOM for range [testDiv, 0, comment, 5], node docfrag assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 26,19: resulting range position for range [testDiv, 0, comment, 5], node docfrag 
</span><span class="cx"> FAIL 26,20: resulting DOM for range [testDiv, 0, comment, 5], node doctype assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 26,20: resulting range position for range [testDiv, 0, comment, 5], node doctype 
</span><span class="cx"> FAIL 26,21: resulting DOM for range [testDiv, 0, comment, 5], node foreignDoctype assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 26,21: resulting range position for range [testDiv, 0, comment, 5], node foreignDoctype 
</span><span class="cx"> FAIL 27,0: resulting DOM for range [foreignDoc, 1, foreignComment, 2], node paras[0] assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><span class="lines">@@ -1739,7 +1327,7 @@
</span><span class="cx"> PASS 27,6: resulting range position for range [foreignDoc, 1, foreignComment, 2], node detachedPara1.firstChild 
</span><span class="cx"> FAIL 27,7: resulting DOM for range [foreignDoc, 1, foreignComment, 2], node document assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 27,7: resulting range position for range [foreignDoc, 1, foreignComment, 2], node document 
</span><span class="cx"> FAIL 27,8: resulting DOM for range [foreignDoc, 1, foreignComment, 2], node detachedDiv assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><span class="lines">@@ -1747,7 +1335,7 @@
</span><span class="cx"> PASS 27,8: resulting range position for range [foreignDoc, 1, foreignComment, 2], node detachedDiv 
</span><span class="cx"> FAIL 27,9: resulting DOM for range [foreignDoc, 1, foreignComment, 2], node foreignDoc assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 27,9: resulting range position for range [foreignDoc, 1, foreignComment, 2], node foreignDoc 
</span><span class="cx"> FAIL 27,10: resulting DOM for range [foreignDoc, 1, foreignComment, 2], node foreignPara2 assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><span class="lines">@@ -1755,7 +1343,7 @@
</span><span class="cx"> PASS 27,10: resulting range position for range [foreignDoc, 1, foreignComment, 2], node foreignPara2 
</span><span class="cx"> FAIL 27,11: resulting DOM for range [foreignDoc, 1, foreignComment, 2], node xmlDoc assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 27,11: resulting range position for range [foreignDoc, 1, foreignComment, 2], node xmlDoc 
</span><span class="cx"> FAIL 27,12: resulting DOM for range [foreignDoc, 1, foreignComment, 2], node xmlElement assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><span class="lines">@@ -1769,33 +1357,25 @@
</span><span class="cx">         try {
</span><span class="cx">           actualRange.surroun...&quot; threw object &quot;Error: HierarchyRequestError: DOM Exception 3&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 3, expected 11
</span><span class="cx"> PASS 27,14: resulting range position for range [foreignDoc, 1, foreignComment, 2], node foreignTextNode 
</span><del>-FAIL 27,15: resulting DOM for range [foreignDoc, 1, foreignComment, 2], node processingInstruction assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 27,15: resulting DOM for range [foreignDoc, 1, foreignComment, 2], node processingInstruction 
</ins><span class="cx"> PASS 27,15: resulting range position for range [foreignDoc, 1, foreignComment, 2], node processingInstruction 
</span><del>-FAIL 27,16: resulting DOM for range [foreignDoc, 1, foreignComment, 2], node detachedProcessingInstruction assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 27,16: resulting DOM for range [foreignDoc, 1, foreignComment, 2], node detachedProcessingInstruction 
</ins><span class="cx"> PASS 27,16: resulting range position for range [foreignDoc, 1, foreignComment, 2], node detachedProcessingInstruction 
</span><del>-FAIL 27,17: resulting DOM for range [foreignDoc, 1, foreignComment, 2], node comment assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 27,17: resulting DOM for range [foreignDoc, 1, foreignComment, 2], node comment 
</ins><span class="cx"> PASS 27,17: resulting range position for range [foreignDoc, 1, foreignComment, 2], node comment 
</span><del>-FAIL 27,18: resulting DOM for range [foreignDoc, 1, foreignComment, 2], node detachedComment assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 27,18: resulting DOM for range [foreignDoc, 1, foreignComment, 2], node detachedComment 
</ins><span class="cx"> PASS 27,18: resulting range position for range [foreignDoc, 1, foreignComment, 2], node detachedComment 
</span><span class="cx"> FAIL 27,19: resulting DOM for range [foreignDoc, 1, foreignComment, 2], node docfrag assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 27,19: resulting range position for range [foreignDoc, 1, foreignComment, 2], node docfrag 
</span><span class="cx"> FAIL 27,20: resulting DOM for range [foreignDoc, 1, foreignComment, 2], node doctype assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 27,20: resulting range position for range [foreignDoc, 1, foreignComment, 2], node doctype 
</span><span class="cx"> FAIL 27,21: resulting DOM for range [foreignDoc, 1, foreignComment, 2], node foreignDoctype assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 27,21: resulting range position for range [foreignDoc, 1, foreignComment, 2], node foreignDoctype 
</span><span class="cx"> PASS 28,0: resulting DOM for range [foreignDoc.body, 0, foreignTextNode, 36], node paras[0] 
</span><span class="cx"> PASS 28,0: resulting range position for range [foreignDoc.body, 0, foreignTextNode, 36], node paras[0] 
</span><span class="lines">@@ -1811,21 +1391,15 @@
</span><span class="cx"> PASS 28,5: resulting range position for range [foreignDoc.body, 0, foreignTextNode, 36], node detachedPara1 
</span><span class="cx"> PASS 28,6: resulting DOM for range [foreignDoc.body, 0, foreignTextNode, 36], node detachedPara1.firstChild 
</span><span class="cx"> PASS 28,6: resulting range position for range [foreignDoc.body, 0, foreignTextNode, 36], node detachedPara1.firstChild 
</span><del>-FAIL 28,7: resulting DOM for range [foreignDoc.body, 0, foreignTextNode, 36], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 28,7: resulting DOM for range [foreignDoc.body, 0, foreignTextNode, 36], node document 
</ins><span class="cx"> PASS 28,7: resulting range position for range [foreignDoc.body, 0, foreignTextNode, 36], node document 
</span><span class="cx"> PASS 28,8: resulting DOM for range [foreignDoc.body, 0, foreignTextNode, 36], node detachedDiv 
</span><span class="cx"> PASS 28,8: resulting range position for range [foreignDoc.body, 0, foreignTextNode, 36], node detachedDiv 
</span><del>-FAIL 28,9: resulting DOM for range [foreignDoc.body, 0, foreignTextNode, 36], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 28,9: resulting DOM for range [foreignDoc.body, 0, foreignTextNode, 36], node foreignDoc 
</ins><span class="cx"> PASS 28,9: resulting range position for range [foreignDoc.body, 0, foreignTextNode, 36], node foreignDoc 
</span><span class="cx"> PASS 28,10: resulting DOM for range [foreignDoc.body, 0, foreignTextNode, 36], node foreignPara2 
</span><span class="cx"> PASS 28,10: resulting range position for range [foreignDoc.body, 0, foreignTextNode, 36], node foreignPara2 
</span><del>-FAIL 28,11: resulting DOM for range [foreignDoc.body, 0, foreignTextNode, 36], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 28,11: resulting DOM for range [foreignDoc.body, 0, foreignTextNode, 36], node xmlDoc 
</ins><span class="cx"> PASS 28,11: resulting range position for range [foreignDoc.body, 0, foreignTextNode, 36], node xmlDoc 
</span><span class="cx"> PASS 28,12: resulting DOM for range [foreignDoc.body, 0, foreignTextNode, 36], node xmlElement 
</span><span class="cx"> PASS 28,12: resulting range position for range [foreignDoc.body, 0, foreignTextNode, 36], node xmlElement 
</span><span class="lines">@@ -1841,17 +1415,11 @@
</span><span class="cx"> PASS 28,17: resulting range position for range [foreignDoc.body, 0, foreignTextNode, 36], node comment 
</span><span class="cx"> PASS 28,18: resulting DOM for range [foreignDoc.body, 0, foreignTextNode, 36], node detachedComment 
</span><span class="cx"> PASS 28,18: resulting range position for range [foreignDoc.body, 0, foreignTextNode, 36], node detachedComment 
</span><del>-FAIL 28,19: resulting DOM for range [foreignDoc.body, 0, foreignTextNode, 36], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 28,19: resulting DOM for range [foreignDoc.body, 0, foreignTextNode, 36], node docfrag 
</ins><span class="cx"> PASS 28,19: resulting range position for range [foreignDoc.body, 0, foreignTextNode, 36], node docfrag 
</span><del>-FAIL 28,20: resulting DOM for range [foreignDoc.body, 0, foreignTextNode, 36], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 28,20: resulting DOM for range [foreignDoc.body, 0, foreignTextNode, 36], node doctype 
</ins><span class="cx"> PASS 28,20: resulting range position for range [foreignDoc.body, 0, foreignTextNode, 36], node doctype 
</span><del>-FAIL 28,21: resulting DOM for range [foreignDoc.body, 0, foreignTextNode, 36], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 28,21: resulting DOM for range [foreignDoc.body, 0, foreignTextNode, 36], node foreignDoctype 
</ins><span class="cx"> PASS 28,21: resulting range position for range [foreignDoc.body, 0, foreignTextNode, 36], node foreignDoctype 
</span><span class="cx"> FAIL 29,0: resulting DOM for range [xmlDoc, 1, xmlComment, 0], node paras[0] assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><span class="lines">@@ -1883,7 +1451,7 @@
</span><span class="cx"> PASS 29,6: resulting range position for range [xmlDoc, 1, xmlComment, 0], node detachedPara1.firstChild 
</span><span class="cx"> FAIL 29,7: resulting DOM for range [xmlDoc, 1, xmlComment, 0], node document assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 29,7: resulting range position for range [xmlDoc, 1, xmlComment, 0], node document 
</span><span class="cx"> FAIL 29,8: resulting DOM for range [xmlDoc, 1, xmlComment, 0], node detachedDiv assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><span class="lines">@@ -1891,7 +1459,7 @@
</span><span class="cx"> PASS 29,8: resulting range position for range [xmlDoc, 1, xmlComment, 0], node detachedDiv 
</span><span class="cx"> FAIL 29,9: resulting DOM for range [xmlDoc, 1, xmlComment, 0], node foreignDoc assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 29,9: resulting range position for range [xmlDoc, 1, xmlComment, 0], node foreignDoc 
</span><span class="cx"> FAIL 29,10: resulting DOM for range [xmlDoc, 1, xmlComment, 0], node foreignPara2 assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><span class="lines">@@ -1899,7 +1467,7 @@
</span><span class="cx"> PASS 29,10: resulting range position for range [xmlDoc, 1, xmlComment, 0], node foreignPara2 
</span><span class="cx"> FAIL 29,11: resulting DOM for range [xmlDoc, 1, xmlComment, 0], node xmlDoc assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 29,11: resulting range position for range [xmlDoc, 1, xmlComment, 0], node xmlDoc 
</span><span class="cx"> FAIL 29,12: resulting DOM for range [xmlDoc, 1, xmlComment, 0], node xmlElement assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><span class="lines">@@ -1913,33 +1481,25 @@
</span><span class="cx">         try {
</span><span class="cx">           actualRange.surroun...&quot; threw object &quot;Error: HierarchyRequestError: DOM Exception 3&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 3, expected 11
</span><span class="cx"> PASS 29,14: resulting range position for range [xmlDoc, 1, xmlComment, 0], node foreignTextNode 
</span><del>-FAIL 29,15: resulting DOM for range [xmlDoc, 1, xmlComment, 0], node processingInstruction assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 29,15: resulting DOM for range [xmlDoc, 1, xmlComment, 0], node processingInstruction 
</ins><span class="cx"> PASS 29,15: resulting range position for range [xmlDoc, 1, xmlComment, 0], node processingInstruction 
</span><del>-FAIL 29,16: resulting DOM for range [xmlDoc, 1, xmlComment, 0], node detachedProcessingInstruction assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 29,16: resulting DOM for range [xmlDoc, 1, xmlComment, 0], node detachedProcessingInstruction 
</ins><span class="cx"> PASS 29,16: resulting range position for range [xmlDoc, 1, xmlComment, 0], node detachedProcessingInstruction 
</span><del>-FAIL 29,17: resulting DOM for range [xmlDoc, 1, xmlComment, 0], node comment assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 29,17: resulting DOM for range [xmlDoc, 1, xmlComment, 0], node comment 
</ins><span class="cx"> PASS 29,17: resulting range position for range [xmlDoc, 1, xmlComment, 0], node comment 
</span><del>-FAIL 29,18: resulting DOM for range [xmlDoc, 1, xmlComment, 0], node detachedComment assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 1, expected 11
</del><ins>+PASS 29,18: resulting DOM for range [xmlDoc, 1, xmlComment, 0], node detachedComment 
</ins><span class="cx"> PASS 29,18: resulting range position for range [xmlDoc, 1, xmlComment, 0], node detachedComment 
</span><span class="cx"> FAIL 29,19: resulting DOM for range [xmlDoc, 1, xmlComment, 0], node docfrag assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 29,19: resulting range position for range [xmlDoc, 1, xmlComment, 0], node docfrag 
</span><span class="cx"> FAIL 29,20: resulting DOM for range [xmlDoc, 1, xmlComment, 0], node doctype assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 29,20: resulting range position for range [xmlDoc, 1, xmlComment, 0], node doctype 
</span><span class="cx"> FAIL 29,21: resulting DOM for range [xmlDoc, 1, xmlComment, 0], node foreignDoctype assert_throws: A INVALID_STATE_ERR must be thrown in this case function &quot;function () {
</span><span class="cx">         try {
</span><del>-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 2, expected 11
</del><ins>+          actualRange.surroun...&quot; threw object &quot;Error: InvalidNodeTypeError: DOM Exception 24&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to 24, expected 11
</ins><span class="cx"> PASS 29,21: resulting range position for range [xmlDoc, 1, xmlComment, 0], node foreignDoctype 
</span><span class="cx"> FAIL 30,0: resulting DOM for range [detachedTextNode, 0, detachedTextNode, 8], node paras[0] assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Uvwxyzab&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 30,0: resulting range position for range [detachedTextNode, 0, detachedTextNode, 8], node paras[0] assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Uvwxyzab&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="lines">@@ -1955,21 +1515,15 @@
</span><span class="cx"> FAIL 30,5: resulting range position for range [detachedTextNode, 0, detachedTextNode, 8], node detachedPara1 assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Uvwxyzab&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 30,6: resulting DOM for range [detachedTextNode, 0, detachedTextNode, 8], node detachedPara1.firstChild assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Uvwxyzab&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 30,6: resulting range position for range [detachedTextNode, 0, detachedTextNode, 8], node detachedPara1.firstChild assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Uvwxyzab&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><del>-FAIL 30,7: resulting DOM for range [detachedTextNode, 0, detachedTextNode, 8], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 30,7: resulting DOM for range [detachedTextNode, 0, detachedTextNode, 8], node document 
</ins><span class="cx"> PASS 30,7: resulting range position for range [detachedTextNode, 0, detachedTextNode, 8], node document 
</span><span class="cx"> FAIL 30,8: resulting DOM for range [detachedTextNode, 0, detachedTextNode, 8], node detachedDiv assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Uvwxyzab&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 30,8: resulting range position for range [detachedTextNode, 0, detachedTextNode, 8], node detachedDiv assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Uvwxyzab&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><del>-FAIL 30,9: resulting DOM for range [detachedTextNode, 0, detachedTextNode, 8], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 30,9: resulting DOM for range [detachedTextNode, 0, detachedTextNode, 8], node foreignDoc 
</ins><span class="cx"> PASS 30,9: resulting range position for range [detachedTextNode, 0, detachedTextNode, 8], node foreignDoc 
</span><span class="cx"> FAIL 30,10: resulting DOM for range [detachedTextNode, 0, detachedTextNode, 8], node foreignPara2 assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Uvwxyzab&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 30,10: resulting range position for range [detachedTextNode, 0, detachedTextNode, 8], node foreignPara2 assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Uvwxyzab&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><del>-FAIL 30,11: resulting DOM for range [detachedTextNode, 0, detachedTextNode, 8], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 30,11: resulting DOM for range [detachedTextNode, 0, detachedTextNode, 8], node xmlDoc 
</ins><span class="cx"> PASS 30,11: resulting range position for range [detachedTextNode, 0, detachedTextNode, 8], node xmlDoc 
</span><span class="cx"> FAIL 30,12: resulting DOM for range [detachedTextNode, 0, detachedTextNode, 8], node xmlElement assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Uvwxyzab&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 30,12: resulting range position for range [detachedTextNode, 0, detachedTextNode, 8], node xmlElement assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Uvwxyzab&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="lines">@@ -1985,17 +1539,11 @@
</span><span class="cx"> FAIL 30,17: resulting range position for range [detachedTextNode, 0, detachedTextNode, 8], node comment assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Uvwxyzab&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 30,18: resulting DOM for range [detachedTextNode, 0, detachedTextNode, 8], node detachedComment assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Uvwxyzab&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 30,18: resulting range position for range [detachedTextNode, 0, detachedTextNode, 8], node detachedComment assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Uvwxyzab&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><del>-FAIL 30,19: resulting DOM for range [detachedTextNode, 0, detachedTextNode, 8], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 30,19: resulting DOM for range [detachedTextNode, 0, detachedTextNode, 8], node docfrag 
</ins><span class="cx"> PASS 30,19: resulting range position for range [detachedTextNode, 0, detachedTextNode, 8], node docfrag 
</span><del>-FAIL 30,20: resulting DOM for range [detachedTextNode, 0, detachedTextNode, 8], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 30,20: resulting DOM for range [detachedTextNode, 0, detachedTextNode, 8], node doctype 
</ins><span class="cx"> PASS 30,20: resulting range position for range [detachedTextNode, 0, detachedTextNode, 8], node doctype 
</span><del>-FAIL 30,21: resulting DOM for range [detachedTextNode, 0, detachedTextNode, 8], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 30,21: resulting DOM for range [detachedTextNode, 0, detachedTextNode, 8], node foreignDoctype 
</ins><span class="cx"> PASS 30,21: resulting range position for range [detachedTextNode, 0, detachedTextNode, 8], node foreignDoctype 
</span><span class="cx"> FAIL 31,0: resulting DOM for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node paras[0] assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Cdefghij&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 31,0: resulting range position for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node paras[0] assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Cdefghij&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="lines">@@ -2011,21 +1559,15 @@
</span><span class="cx"> FAIL 31,5: resulting range position for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node detachedPara1 assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Cdefghij&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 31,6: resulting DOM for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node detachedPara1.firstChild assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Cdefghij&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 31,6: resulting range position for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node detachedPara1.firstChild assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Cdefghij&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><del>-FAIL 31,7: resulting DOM for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 31,7: resulting DOM for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node document 
</ins><span class="cx"> PASS 31,7: resulting range position for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node document 
</span><span class="cx"> FAIL 31,8: resulting DOM for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node detachedDiv assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Cdefghij&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 31,8: resulting range position for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node detachedDiv assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Cdefghij&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><del>-FAIL 31,9: resulting DOM for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 31,9: resulting DOM for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node foreignDoc 
</ins><span class="cx"> PASS 31,9: resulting range position for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node foreignDoc 
</span><span class="cx"> FAIL 31,10: resulting DOM for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node foreignPara2 assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Cdefghij&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 31,10: resulting range position for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node foreignPara2 assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Cdefghij&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><del>-FAIL 31,11: resulting DOM for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 31,11: resulting DOM for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node xmlDoc 
</ins><span class="cx"> PASS 31,11: resulting range position for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node xmlDoc 
</span><span class="cx"> FAIL 31,12: resulting DOM for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node xmlElement assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Cdefghij&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 31,12: resulting range position for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node xmlElement assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Cdefghij&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="lines">@@ -2041,17 +1583,11 @@
</span><span class="cx"> FAIL 31,17: resulting range position for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node comment assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Cdefghij&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 31,18: resulting DOM for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node detachedComment assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Cdefghij&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 31,18: resulting range position for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node detachedComment assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Cdefghij&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><del>-FAIL 31,19: resulting DOM for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 31,19: resulting DOM for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node docfrag 
</ins><span class="cx"> PASS 31,19: resulting range position for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node docfrag 
</span><del>-FAIL 31,20: resulting DOM for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 31,20: resulting DOM for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node doctype 
</ins><span class="cx"> PASS 31,20: resulting range position for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node doctype 
</span><del>-FAIL 31,21: resulting DOM for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 31,21: resulting DOM for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node foreignDoctype 
</ins><span class="cx"> PASS 31,21: resulting range position for range [detachedForeignTextNode, 0, detachedForeignTextNode, 8], node foreignDoctype 
</span><span class="cx"> FAIL 32,0: resulting DOM for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node paras[0] assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Klmnopqr&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 32,0: resulting range position for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node paras[0] assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Klmnopqr&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="lines">@@ -2067,21 +1603,15 @@
</span><span class="cx"> FAIL 32,5: resulting range position for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node detachedPara1 assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Klmnopqr&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 32,6: resulting DOM for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node detachedPara1.firstChild assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Klmnopqr&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 32,6: resulting range position for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node detachedPara1.firstChild assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Klmnopqr&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><del>-FAIL 32,7: resulting DOM for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 32,7: resulting DOM for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node document 
</ins><span class="cx"> PASS 32,7: resulting range position for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node document 
</span><span class="cx"> FAIL 32,8: resulting DOM for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node detachedDiv assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Klmnopqr&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 32,8: resulting range position for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node detachedDiv assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Klmnopqr&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><del>-FAIL 32,9: resulting DOM for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 32,9: resulting DOM for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node foreignDoc 
</ins><span class="cx"> PASS 32,9: resulting range position for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node foreignDoc 
</span><span class="cx"> FAIL 32,10: resulting DOM for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node foreignPara2 assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Klmnopqr&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 32,10: resulting range position for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node foreignPara2 assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Klmnopqr&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><del>-FAIL 32,11: resulting DOM for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 32,11: resulting DOM for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node xmlDoc 
</ins><span class="cx"> PASS 32,11: resulting range position for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node xmlDoc 
</span><span class="cx"> FAIL 32,12: resulting DOM for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node xmlElement assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Klmnopqr&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 32,12: resulting range position for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node xmlElement assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Klmnopqr&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="lines">@@ -2097,17 +1627,11 @@
</span><span class="cx"> FAIL 32,17: resulting range position for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node comment assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Klmnopqr&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 32,18: resulting DOM for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node detachedComment assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Klmnopqr&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 32,18: resulting range position for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node detachedComment assert_true: First differing node: expected Text node &quot;&quot;, got Text node &quot;Klmnopqr&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><del>-FAIL 32,19: resulting DOM for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 32,19: resulting DOM for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node docfrag 
</ins><span class="cx"> PASS 32,19: resulting range position for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node docfrag 
</span><del>-FAIL 32,20: resulting DOM for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 32,20: resulting DOM for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node doctype 
</ins><span class="cx"> PASS 32,20: resulting range position for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node doctype 
</span><del>-FAIL 32,21: resulting DOM for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 32,21: resulting DOM for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node foreignDoctype 
</ins><span class="cx"> PASS 32,21: resulting range position for range [detachedXmlTextNode, 0, detachedXmlTextNode, 8], node foreignDoctype 
</span><span class="cx"> FAIL 33,0: resulting DOM for range [detachedComment, 3, detachedComment, 4], node paras[0] assert_true: First differing node: expected Comment node &lt;!--Stuwxyz--&gt;, got Comment node &lt;!--Stuvwxyz--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 33,0: resulting range position for range [detachedComment, 3, detachedComment, 4], node paras[0] assert_true: First differing node: expected Comment node &lt;!--Stuwxyz--&gt;, got Comment node &lt;!--Stuvwxyz--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="lines">@@ -2123,21 +1647,15 @@
</span><span class="cx"> FAIL 33,5: resulting range position for range [detachedComment, 3, detachedComment, 4], node detachedPara1 assert_true: First differing node: expected Comment node &lt;!--Stuwxyz--&gt;, got Comment node &lt;!--Stuvwxyz--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 33,6: resulting DOM for range [detachedComment, 3, detachedComment, 4], node detachedPara1.firstChild assert_true: First differing node: expected Comment node &lt;!--Stuwxyz--&gt;, got Comment node &lt;!--Stuvwxyz--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 33,6: resulting range position for range [detachedComment, 3, detachedComment, 4], node detachedPara1.firstChild assert_true: First differing node: expected Comment node &lt;!--Stuwxyz--&gt;, got Comment node &lt;!--Stuvwxyz--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><del>-FAIL 33,7: resulting DOM for range [detachedComment, 3, detachedComment, 4], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 33,7: resulting DOM for range [detachedComment, 3, detachedComment, 4], node document 
</ins><span class="cx"> PASS 33,7: resulting range position for range [detachedComment, 3, detachedComment, 4], node document 
</span><span class="cx"> FAIL 33,8: resulting DOM for range [detachedComment, 3, detachedComment, 4], node detachedDiv assert_true: First differing node: expected Comment node &lt;!--Stuwxyz--&gt;, got Comment node &lt;!--Stuvwxyz--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 33,8: resulting range position for range [detachedComment, 3, detachedComment, 4], node detachedDiv assert_true: First differing node: expected Comment node &lt;!--Stuwxyz--&gt;, got Comment node &lt;!--Stuvwxyz--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><del>-FAIL 33,9: resulting DOM for range [detachedComment, 3, detachedComment, 4], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 33,9: resulting DOM for range [detachedComment, 3, detachedComment, 4], node foreignDoc 
</ins><span class="cx"> PASS 33,9: resulting range position for range [detachedComment, 3, detachedComment, 4], node foreignDoc 
</span><span class="cx"> FAIL 33,10: resulting DOM for range [detachedComment, 3, detachedComment, 4], node foreignPara2 assert_true: First differing node: expected Comment node &lt;!--Stuwxyz--&gt;, got Comment node &lt;!--Stuvwxyz--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 33,10: resulting range position for range [detachedComment, 3, detachedComment, 4], node foreignPara2 assert_true: First differing node: expected Comment node &lt;!--Stuwxyz--&gt;, got Comment node &lt;!--Stuvwxyz--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><del>-FAIL 33,11: resulting DOM for range [detachedComment, 3, detachedComment, 4], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 33,11: resulting DOM for range [detachedComment, 3, detachedComment, 4], node xmlDoc 
</ins><span class="cx"> PASS 33,11: resulting range position for range [detachedComment, 3, detachedComment, 4], node xmlDoc 
</span><span class="cx"> FAIL 33,12: resulting DOM for range [detachedComment, 3, detachedComment, 4], node xmlElement assert_true: First differing node: expected Comment node &lt;!--Stuwxyz--&gt;, got Comment node &lt;!--Stuvwxyz--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 33,12: resulting range position for range [detachedComment, 3, detachedComment, 4], node xmlElement assert_true: First differing node: expected Comment node &lt;!--Stuwxyz--&gt;, got Comment node &lt;!--Stuvwxyz--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="lines">@@ -2153,17 +1671,11 @@
</span><span class="cx"> FAIL 33,17: resulting range position for range [detachedComment, 3, detachedComment, 4], node comment assert_true: First differing node: expected Comment node &lt;!--Stuwxyz--&gt;, got Comment node &lt;!--Stuvwxyz--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 33,18: resulting DOM for range [detachedComment, 3, detachedComment, 4], node detachedComment assert_true: First differing node: expected Comment node &lt;!--Stuwxyz--&gt;, got Comment node &lt;!--Stuvwxyz--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 33,18: resulting range position for range [detachedComment, 3, detachedComment, 4], node detachedComment assert_true: First differing node: expected Comment node &lt;!--Stuwxyz--&gt;, got Comment node &lt;!--Stuvwxyz--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><del>-FAIL 33,19: resulting DOM for range [detachedComment, 3, detachedComment, 4], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 33,19: resulting DOM for range [detachedComment, 3, detachedComment, 4], node docfrag 
</ins><span class="cx"> PASS 33,19: resulting range position for range [detachedComment, 3, detachedComment, 4], node docfrag 
</span><del>-FAIL 33,20: resulting DOM for range [detachedComment, 3, detachedComment, 4], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 33,20: resulting DOM for range [detachedComment, 3, detachedComment, 4], node doctype 
</ins><span class="cx"> PASS 33,20: resulting range position for range [detachedComment, 3, detachedComment, 4], node doctype 
</span><del>-FAIL 33,21: resulting DOM for range [detachedComment, 3, detachedComment, 4], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 33,21: resulting DOM for range [detachedComment, 3, detachedComment, 4], node foreignDoctype 
</ins><span class="cx"> PASS 33,21: resulting range position for range [detachedComment, 3, detachedComment, 4], node foreignDoctype 
</span><span class="cx"> FAIL 34,0: resulting DOM for range [detachedForeignComment, 0, detachedForeignComment, 1], node paras[0] assert_true: First differing node: expected Comment node &lt;!--×¨×™×” ×™×”ודה--&gt;, got Comment node &lt;!--אריה ×™×”ודה--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 34,0: resulting range position for range [detachedForeignComment, 0, detachedForeignComment, 1], node paras[0] assert_true: First differing node: expected Comment node &lt;!--×¨×™×” ×™×”ודה--&gt;, got Comment node &lt;!--אריה ×™×”ודה--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="lines">@@ -2179,21 +1691,15 @@
</span><span class="cx"> FAIL 34,5: resulting range position for range [detachedForeignComment, 0, detachedForeignComment, 1], node detachedPara1 assert_true: First differing node: expected Comment node &lt;!--×¨×™×” ×™×”ודה--&gt;, got Comment node &lt;!--אריה ×™×”ודה--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 34,6: resulting DOM for range [detachedForeignComment, 0, detachedForeignComment, 1], node detachedPara1.firstChild assert_true: First differing node: expected Comment node &lt;!--×¨×™×” ×™×”ודה--&gt;, got Comment node &lt;!--אריה ×™×”ודה--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 34,6: resulting range position for range [detachedForeignComment, 0, detachedForeignComment, 1], node detachedPara1.firstChild assert_true: First differing node: expected Comment node &lt;!--×¨×™×” ×™×”ודה--&gt;, got Comment node &lt;!--אריה ×™×”ודה--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><del>-FAIL 34,7: resulting DOM for range [detachedForeignComment, 0, detachedForeignComment, 1], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 34,7: resulting DOM for range [detachedForeignComment, 0, detachedForeignComment, 1], node document 
</ins><span class="cx"> PASS 34,7: resulting range position for range [detachedForeignComment, 0, detachedForeignComment, 1], node document 
</span><span class="cx"> FAIL 34,8: resulting DOM for range [detachedForeignComment, 0, detachedForeignComment, 1], node detachedDiv assert_true: First differing node: expected Comment node &lt;!--×¨×™×” ×™×”ודה--&gt;, got Comment node &lt;!--אריה ×™×”ודה--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 34,8: resulting range position for range [detachedForeignComment, 0, detachedForeignComment, 1], node detachedDiv assert_true: First differing node: expected Comment node &lt;!--×¨×™×” ×™×”ודה--&gt;, got Comment node &lt;!--אריה ×™×”ודה--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><del>-FAIL 34,9: resulting DOM for range [detachedForeignComment, 0, detachedForeignComment, 1], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 34,9: resulting DOM for range [detachedForeignComment, 0, detachedForeignComment, 1], node foreignDoc 
</ins><span class="cx"> PASS 34,9: resulting range position for range [detachedForeignComment, 0, detachedForeignComment, 1], node foreignDoc 
</span><span class="cx"> FAIL 34,10: resulting DOM for range [detachedForeignComment, 0, detachedForeignComment, 1], node foreignPara2 assert_true: First differing node: expected Comment node &lt;!--×¨×™×” ×™×”ודה--&gt;, got Comment node &lt;!--אריה ×™×”ודה--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 34,10: resulting range position for range [detachedForeignComment, 0, detachedForeignComment, 1], node foreignPara2 assert_true: First differing node: expected Comment node &lt;!--×¨×™×” ×™×”ודה--&gt;, got Comment node &lt;!--אריה ×™×”ודה--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><del>-FAIL 34,11: resulting DOM for range [detachedForeignComment, 0, detachedForeignComment, 1], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 34,11: resulting DOM for range [detachedForeignComment, 0, detachedForeignComment, 1], node xmlDoc 
</ins><span class="cx"> PASS 34,11: resulting range position for range [detachedForeignComment, 0, detachedForeignComment, 1], node xmlDoc 
</span><span class="cx"> FAIL 34,12: resulting DOM for range [detachedForeignComment, 0, detachedForeignComment, 1], node xmlElement assert_true: First differing node: expected Comment node &lt;!--×¨×™×” ×™×”ודה--&gt;, got Comment node &lt;!--אריה ×™×”ודה--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 34,12: resulting range position for range [detachedForeignComment, 0, detachedForeignComment, 1], node xmlElement assert_true: First differing node: expected Comment node &lt;!--×¨×™×” ×™×”ודה--&gt;, got Comment node &lt;!--אריה ×™×”ודה--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="lines">@@ -2209,17 +1715,11 @@
</span><span class="cx"> FAIL 34,17: resulting range position for range [detachedForeignComment, 0, detachedForeignComment, 1], node comment assert_true: First differing node: expected Comment node &lt;!--×¨×™×” ×™×”ודה--&gt;, got Comment node &lt;!--אריה ×™×”ודה--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 34,18: resulting DOM for range [detachedForeignComment, 0, detachedForeignComment, 1], node detachedComment assert_true: First differing node: expected Comment node &lt;!--×¨×™×” ×™×”ודה--&gt;, got Comment node &lt;!--אריה ×™×”ודה--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 34,18: resulting range position for range [detachedForeignComment, 0, detachedForeignComment, 1], node detachedComment assert_true: First differing node: expected Comment node &lt;!--×¨×™×” ×™×”ודה--&gt;, got Comment node &lt;!--אריה ×™×”ודה--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><del>-FAIL 34,19: resulting DOM for range [detachedForeignComment, 0, detachedForeignComment, 1], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 34,19: resulting DOM for range [detachedForeignComment, 0, detachedForeignComment, 1], node docfrag 
</ins><span class="cx"> PASS 34,19: resulting range position for range [detachedForeignComment, 0, detachedForeignComment, 1], node docfrag 
</span><del>-FAIL 34,20: resulting DOM for range [detachedForeignComment, 0, detachedForeignComment, 1], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 34,20: resulting DOM for range [detachedForeignComment, 0, detachedForeignComment, 1], node doctype 
</ins><span class="cx"> PASS 34,20: resulting range position for range [detachedForeignComment, 0, detachedForeignComment, 1], node doctype 
</span><del>-FAIL 34,21: resulting DOM for range [detachedForeignComment, 0, detachedForeignComment, 1], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 34,21: resulting DOM for range [detachedForeignComment, 0, detachedForeignComment, 1], node foreignDoctype 
</ins><span class="cx"> PASS 34,21: resulting range position for range [detachedForeignComment, 0, detachedForeignComment, 1], node foreignDoctype 
</span><span class="cx"> FAIL 35,0: resulting DOM for range [detachedXmlComment, 2, detachedXmlComment, 6], node paras[0] assert_true: First differing node: expected Comment node &lt;!--ב—יים ××œ×™×¢×–ר--&gt;, got Comment node &lt;!--בן ×—יים ××œ×™×¢×–ר--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 35,0: resulting range position for range [detachedXmlComment, 2, detachedXmlComment, 6], node paras[0] assert_true: First differing node: expected Comment node &lt;!--ב—יים ××œ×™×¢×–ר--&gt;, got Comment node &lt;!--בן ×—יים ××œ×™×¢×–ר--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="lines">@@ -2235,21 +1735,15 @@
</span><span class="cx"> FAIL 35,5: resulting range position for range [detachedXmlComment, 2, detachedXmlComment, 6], node detachedPara1 assert_true: First differing node: expected Comment node &lt;!--ב—יים ××œ×™×¢×–ר--&gt;, got Comment node &lt;!--בן ×—יים ××œ×™×¢×–ר--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 35,6: resulting DOM for range [detachedXmlComment, 2, detachedXmlComment, 6], node detachedPara1.firstChild assert_true: First differing node: expected Comment node &lt;!--ב—יים ××œ×™×¢×–ר--&gt;, got Comment node &lt;!--בן ×—יים ××œ×™×¢×–ר--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 35,6: resulting range position for range [detachedXmlComment, 2, detachedXmlComment, 6], node detachedPara1.firstChild assert_true: First differing node: expected Comment node &lt;!--ב—יים ××œ×™×¢×–ר--&gt;, got Comment node &lt;!--בן ×—יים ××œ×™×¢×–ר--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><del>-FAIL 35,7: resulting DOM for range [detachedXmlComment, 2, detachedXmlComment, 6], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 35,7: resulting DOM for range [detachedXmlComment, 2, detachedXmlComment, 6], node document 
</ins><span class="cx"> PASS 35,7: resulting range position for range [detachedXmlComment, 2, detachedXmlComment, 6], node document 
</span><span class="cx"> FAIL 35,8: resulting DOM for range [detachedXmlComment, 2, detachedXmlComment, 6], node detachedDiv assert_true: First differing node: expected Comment node &lt;!--ב—יים ××œ×™×¢×–ר--&gt;, got Comment node &lt;!--בן ×—יים ××œ×™×¢×–ר--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 35,8: resulting range position for range [detachedXmlComment, 2, detachedXmlComment, 6], node detachedDiv assert_true: First differing node: expected Comment node &lt;!--ב—יים ××œ×™×¢×–ר--&gt;, got Comment node &lt;!--בן ×—יים ××œ×™×¢×–ר--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><del>-FAIL 35,9: resulting DOM for range [detachedXmlComment, 2, detachedXmlComment, 6], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 35,9: resulting DOM for range [detachedXmlComment, 2, detachedXmlComment, 6], node foreignDoc 
</ins><span class="cx"> PASS 35,9: resulting range position for range [detachedXmlComment, 2, detachedXmlComment, 6], node foreignDoc 
</span><span class="cx"> FAIL 35,10: resulting DOM for range [detachedXmlComment, 2, detachedXmlComment, 6], node foreignPara2 assert_true: First differing node: expected Comment node &lt;!--ב—יים ××œ×™×¢×–ר--&gt;, got Comment node &lt;!--בן ×—יים ××œ×™×¢×–ר--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 35,10: resulting range position for range [detachedXmlComment, 2, detachedXmlComment, 6], node foreignPara2 assert_true: First differing node: expected Comment node &lt;!--ב—יים ××œ×™×¢×–ר--&gt;, got Comment node &lt;!--בן ×—יים ××œ×™×¢×–ר--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><del>-FAIL 35,11: resulting DOM for range [detachedXmlComment, 2, detachedXmlComment, 6], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 35,11: resulting DOM for range [detachedXmlComment, 2, detachedXmlComment, 6], node xmlDoc 
</ins><span class="cx"> PASS 35,11: resulting range position for range [detachedXmlComment, 2, detachedXmlComment, 6], node xmlDoc 
</span><span class="cx"> FAIL 35,12: resulting DOM for range [detachedXmlComment, 2, detachedXmlComment, 6], node xmlElement assert_true: First differing node: expected Comment node &lt;!--ב—יים ××œ×™×¢×–ר--&gt;, got Comment node &lt;!--בן ×—יים ××œ×™×¢×–ר--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 35,12: resulting range position for range [detachedXmlComment, 2, detachedXmlComment, 6], node xmlElement assert_true: First differing node: expected Comment node &lt;!--ב—יים ××œ×™×¢×–ר--&gt;, got Comment node &lt;!--בן ×—יים ××œ×™×¢×–ר--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="lines">@@ -2265,17 +1759,11 @@
</span><span class="cx"> FAIL 35,17: resulting range position for range [detachedXmlComment, 2, detachedXmlComment, 6], node comment assert_true: First differing node: expected Comment node &lt;!--ב—יים ××œ×™×¢×–ר--&gt;, got Comment node &lt;!--בן ×—יים ××œ×™×¢×–ר--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 35,18: resulting DOM for range [detachedXmlComment, 2, detachedXmlComment, 6], node detachedComment assert_true: First differing node: expected Comment node &lt;!--ב—יים ××œ×™×¢×–ר--&gt;, got Comment node &lt;!--בן ×—יים ××œ×™×¢×–ר--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 35,18: resulting range position for range [detachedXmlComment, 2, detachedXmlComment, 6], node detachedComment assert_true: First differing node: expected Comment node &lt;!--ב—יים ××œ×™×¢×–ר--&gt;, got Comment node &lt;!--בן ×—יים ××œ×™×¢×–ר--&gt; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><del>-FAIL 35,19: resulting DOM for range [detachedXmlComment, 2, detachedXmlComment, 6], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 35,19: resulting DOM for range [detachedXmlComment, 2, detachedXmlComment, 6], node docfrag 
</ins><span class="cx"> PASS 35,19: resulting range position for range [detachedXmlComment, 2, detachedXmlComment, 6], node docfrag 
</span><del>-FAIL 35,20: resulting DOM for range [detachedXmlComment, 2, detachedXmlComment, 6], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 35,20: resulting DOM for range [detachedXmlComment, 2, detachedXmlComment, 6], node doctype 
</ins><span class="cx"> PASS 35,20: resulting range position for range [detachedXmlComment, 2, detachedXmlComment, 6], node doctype 
</span><del>-FAIL 35,21: resulting DOM for range [detachedXmlComment, 2, detachedXmlComment, 6], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 35,21: resulting DOM for range [detachedXmlComment, 2, detachedXmlComment, 6], node foreignDoctype 
</ins><span class="cx"> PASS 35,21: resulting range position for range [detachedXmlComment, 2, detachedXmlComment, 6], node foreignDoctype 
</span><span class="cx"> PASS 36,0: resulting DOM for range [docfrag, 0, docfrag, 0], node paras[0] 
</span><span class="cx"> PASS 36,0: resulting range position for range [docfrag, 0, docfrag, 0], node paras[0] 
</span><span class="lines">@@ -2291,21 +1779,15 @@
</span><span class="cx"> PASS 36,5: resulting range position for range [docfrag, 0, docfrag, 0], node detachedPara1 
</span><span class="cx"> PASS 36,6: resulting DOM for range [docfrag, 0, docfrag, 0], node detachedPara1.firstChild 
</span><span class="cx"> PASS 36,6: resulting range position for range [docfrag, 0, docfrag, 0], node detachedPara1.firstChild 
</span><del>-FAIL 36,7: resulting DOM for range [docfrag, 0, docfrag, 0], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 36,7: resulting DOM for range [docfrag, 0, docfrag, 0], node document 
</ins><span class="cx"> PASS 36,7: resulting range position for range [docfrag, 0, docfrag, 0], node document 
</span><span class="cx"> PASS 36,8: resulting DOM for range [docfrag, 0, docfrag, 0], node detachedDiv 
</span><span class="cx"> PASS 36,8: resulting range position for range [docfrag, 0, docfrag, 0], node detachedDiv 
</span><del>-FAIL 36,9: resulting DOM for range [docfrag, 0, docfrag, 0], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 36,9: resulting DOM for range [docfrag, 0, docfrag, 0], node foreignDoc 
</ins><span class="cx"> PASS 36,9: resulting range position for range [docfrag, 0, docfrag, 0], node foreignDoc 
</span><span class="cx"> PASS 36,10: resulting DOM for range [docfrag, 0, docfrag, 0], node foreignPara2 
</span><span class="cx"> PASS 36,10: resulting range position for range [docfrag, 0, docfrag, 0], node foreignPara2 
</span><del>-FAIL 36,11: resulting DOM for range [docfrag, 0, docfrag, 0], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 36,11: resulting DOM for range [docfrag, 0, docfrag, 0], node xmlDoc 
</ins><span class="cx"> PASS 36,11: resulting range position for range [docfrag, 0, docfrag, 0], node xmlDoc 
</span><span class="cx"> PASS 36,12: resulting DOM for range [docfrag, 0, docfrag, 0], node xmlElement 
</span><span class="cx"> PASS 36,12: resulting range position for range [docfrag, 0, docfrag, 0], node xmlElement 
</span><span class="lines">@@ -2321,17 +1803,11 @@
</span><span class="cx"> PASS 36,17: resulting range position for range [docfrag, 0, docfrag, 0], node comment 
</span><span class="cx"> PASS 36,18: resulting DOM for range [docfrag, 0, docfrag, 0], node detachedComment 
</span><span class="cx"> PASS 36,18: resulting range position for range [docfrag, 0, docfrag, 0], node detachedComment 
</span><del>-FAIL 36,19: resulting DOM for range [docfrag, 0, docfrag, 0], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 36,19: resulting DOM for range [docfrag, 0, docfrag, 0], node docfrag 
</ins><span class="cx"> PASS 36,19: resulting range position for range [docfrag, 0, docfrag, 0], node docfrag 
</span><del>-FAIL 36,20: resulting DOM for range [docfrag, 0, docfrag, 0], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 36,20: resulting DOM for range [docfrag, 0, docfrag, 0], node doctype 
</ins><span class="cx"> PASS 36,20: resulting range position for range [docfrag, 0, docfrag, 0], node doctype 
</span><del>-FAIL 36,21: resulting DOM for range [docfrag, 0, docfrag, 0], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 36,21: resulting DOM for range [docfrag, 0, docfrag, 0], node foreignDoctype 
</ins><span class="cx"> PASS 36,21: resulting range position for range [docfrag, 0, docfrag, 0], node foreignDoctype 
</span><span class="cx"> FAIL 37,0: resulting DOM for range [processingInstruction, 0, processingInstruction, 4], node paras[0] assert_true: First differing node: expected Element node &lt;p id=&quot;b&quot; style=&quot;display:none&quot;&gt;Ijklmnop
</span><span class="cx"> &lt;/p&gt;, got Text node &quot;Äb̈c̈d̈ëf̈g̈ḧ
</span><span class="lines">@@ -2351,21 +1827,15 @@
</span><span class="cx"> FAIL 37,5: resulting range position for range [processingInstruction, 0, processingInstruction, 4], node detachedPara1 assert_true: First differing node: expected Element node &lt;p&gt;Wxyzabcd&lt;/p&gt;, got Text node &quot;Opqrstuv&quot; [Actual and expected mismatch for moved node's tree root.  ] expected true got false
</span><span class="cx"> PASS 37,6: resulting DOM for range [processingInstruction, 0, processingInstruction, 4], node detachedPara1.firstChild 
</span><span class="cx"> FAIL 37,6: resulting range position for range [processingInstruction, 0, processingInstruction, 4], node detachedPara1.firstChild assert_equals: Unexpected endOffset after surroundContents() expected 0 but got 4
</span><del>-FAIL 37,7: resulting DOM for range [processingInstruction, 0, processingInstruction, 4], node document assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 37,7: resulting DOM for range [processingInstruction, 0, processingInstruction, 4], node document 
</ins><span class="cx"> PASS 37,7: resulting range position for range [processingInstruction, 0, processingInstruction, 4], node document 
</span><span class="cx"> FAIL 37,8: resulting DOM for range [processingInstruction, 0, processingInstruction, 4], node detachedDiv assert_unreached: DOMs were not equal but we couldn't figure out why Reached unreachable code
</span><span class="cx"> FAIL 37,8: resulting range position for range [processingInstruction, 0, processingInstruction, 4], node detachedDiv assert_unreached: DOMs were not equal but we couldn't figure out why Reached unreachable code
</span><del>-FAIL 37,9: resulting DOM for range [processingInstruction, 0, processingInstruction, 4], node foreignDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 37,9: resulting DOM for range [processingInstruction, 0, processingInstruction, 4], node foreignDoc 
</ins><span class="cx"> PASS 37,9: resulting range position for range [processingInstruction, 0, processingInstruction, 4], node foreignDoc 
</span><span class="cx"> FAIL 37,10: resulting DOM for range [processingInstruction, 0, processingInstruction, 4], node foreignPara2 assert_true: First differing node: expected Text node &quot;I admit that I harbor doubts about whether we really need...&quot;, got Text node &quot;Mnopqrst&quot; [Actual and expected mismatch for moved node's tree root.  ] expected true got false
</span><span class="cx"> FAIL 37,10: resulting range position for range [processingInstruction, 0, processingInstruction, 4], node foreignPara2 assert_true: First differing node: expected Text node &quot;I admit that I harbor doubts about whether we really need...&quot;, got Text node &quot;Mnopqrst&quot; [Actual and expected mismatch for moved node's tree root.  ] expected true got false
</span><del>-FAIL 37,11: resulting DOM for range [processingInstruction, 0, processingInstruction, 4], node xmlDoc assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 37,11: resulting DOM for range [processingInstruction, 0, processingInstruction, 4], node xmlDoc 
</ins><span class="cx"> PASS 37,11: resulting range position for range [processingInstruction, 0, processingInstruction, 4], node xmlDoc 
</span><span class="cx"> FAIL 37,12: resulting DOM for range [processingInstruction, 0, processingInstruction, 4], node xmlElement assert_true: First differing node: expected ProcessingInstruction node with target &quot;somePI&quot; and data &quot;Did you know that \&quot;:syn sync fromstart\&quot; is very useful wh...&quot;, got Text node &quot;do re mi fa so la ti&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 37,12: resulting range position for range [processingInstruction, 0, processingInstruction, 4], node xmlElement assert_true: First differing node: expected ProcessingInstruction node with target &quot;somePI&quot; and data &quot;Did you know that \&quot;:syn sync fromstart\&quot; is very useful wh...&quot;, got Text node &quot;do re mi fa so la ti&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="lines">@@ -2381,16 +1851,10 @@
</span><span class="cx"> FAIL 37,17: resulting range position for range [processingInstruction, 0, processingInstruction, 4], node comment assert_true: First differing node: expected ProcessingInstruction node with target &quot;somePI&quot; and data &quot;Did you know that \&quot;:syn sync fromstart\&quot; is very useful wh...&quot;, got ProcessingInstruction node with target &quot;somePI&quot; and data &quot;you know that \&quot;:syn sync fromstart\&quot; is very useful when u...&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 37,18: resulting DOM for range [processingInstruction, 0, processingInstruction, 4], node detachedComment assert_true: First differing node: expected ProcessingInstruction node with target &quot;somePI&quot; and data &quot;Did you know that \&quot;:syn sync fromstart\&quot; is very useful wh...&quot;, got ProcessingInstruction node with target &quot;somePI&quot; and data &quot;you know that \&quot;:syn sync fromstart\&quot; is very useful when u...&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><span class="cx"> FAIL 37,18: resulting range position for range [processingInstruction, 0, processingInstruction, 4], node detachedComment assert_true: First differing node: expected ProcessingInstruction node with target &quot;somePI&quot; and data &quot;Did you know that \&quot;:syn sync fromstart\&quot; is very useful wh...&quot;, got ProcessingInstruction node with target &quot;somePI&quot; and data &quot;you know that \&quot;:syn sync fromstart\&quot; is very useful when u...&quot; [Actual and expected mismatch for range's tree root.  ] expected true got false
</span><del>-FAIL 37,19: resulting DOM for range [processingInstruction, 0, processingInstruction, 4], node docfrag assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 37,19: resulting DOM for range [processingInstruction, 0, processingInstruction, 4], node docfrag 
</ins><span class="cx"> PASS 37,19: resulting range position for range [processingInstruction, 0, processingInstruction, 4], node docfrag 
</span><del>-FAIL 37,20: resulting DOM for range [processingInstruction, 0, processingInstruction, 4], node doctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 37,20: resulting DOM for range [processingInstruction, 0, processingInstruction, 4], node doctype 
</ins><span class="cx"> PASS 37,20: resulting range position for range [processingInstruction, 0, processingInstruction, 4], node doctype 
</span><del>-FAIL 37,21: resulting DOM for range [processingInstruction, 0, processingInstruction, 4], node foreignDoctype assert_throws: A INVALID_NODE_TYPE_ERR must be thrown in this case function &quot;function () {
-        try {
-          actualRange.surroun...&quot; threw object &quot;Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2&quot; that is not a DOMException INVALID_NODE_TYPE_ERR: property &quot;code&quot; is equal to 2, expected 24
</del><ins>+PASS 37,21: resulting DOM for range [processingInstruction, 0, processingInstruction, 4], node foreignDoctype 
</ins><span class="cx"> PASS 37,21: resulting range position for range [processingInstruction, 0, processingInstruction, 4], node foreignDoctype 
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsplatformefljsdomglobalconstructorsattributesexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/efl/js/dom/global-constructors-attributes-expected.txt (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/efl/js/dom/global-constructors-attributes-expected.txt        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/platform/efl/js/dom/global-constructors-attributes-expected.txt        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -993,11 +993,6 @@
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Range').hasOwnProperty('set') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Range').enumerable is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Range').configurable is true
</span><del>-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').value is RangeException
-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').configurable is true
</del><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'ReadableStream').value is ReadableStream
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'ReadableStream').hasOwnProperty('get') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'ReadableStream').hasOwnProperty('set') is false
</span></span></pre></div>
<a id="trunkLayoutTestsplatformgtkjsdomglobalconstructorsattributesexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/gtk/js/dom/global-constructors-attributes-expected.txt (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/gtk/js/dom/global-constructors-attributes-expected.txt        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/platform/gtk/js/dom/global-constructors-attributes-expected.txt        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -1013,11 +1013,6 @@
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Range').hasOwnProperty('set') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Range').enumerable is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Range').configurable is true
</span><del>-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').value is RangeException
-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').configurable is true
</del><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'ReadableStream').value is ReadableStream
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'ReadableStream').hasOwnProperty('get') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'ReadableStream').hasOwnProperty('set') is false
</span></span></pre></div>
<a id="trunkLayoutTestsplatformmacfastdomWindowwindowlookupprecedenceexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/mac/fast/dom/Window/window-lookup-precedence-expected.txt (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/mac/fast/dom/Window/window-lookup-precedence-expected.txt        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/platform/mac/fast/dom/Window/window-lookup-precedence-expected.txt        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -260,8 +260,6 @@
</span><span class="cx"> PASS win['ProgressEvent'] == '[object ProgressEventConstructor]' is true
</span><span class="cx"> PASS win['Range'] == '[object RangeConstructor]' is true
</span><span class="cx"> PASS win['Range'] == '[object RangeConstructor]' is true
</span><del>-PASS win['RangeException'] == '[object RangeExceptionConstructor]' is true
-PASS win['RangeException'] == '[object RangeExceptionConstructor]' is true
</del><span class="cx"> PASS win['Rect'] == '[object RectConstructor]' is true
</span><span class="cx"> PASS win['Rect'] == '[object RectConstructor]' is true
</span><span class="cx"> PASS win['SVGAngle'] == '[object SVGAngleConstructor]' is true
</span></span></pre></div>
<a id="trunkLayoutTestsplatformmacjsdomglobalconstructorsattributesexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/mac/js/dom/global-constructors-attributes-expected.txt (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/mac/js/dom/global-constructors-attributes-expected.txt        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/platform/mac/js/dom/global-constructors-attributes-expected.txt        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -1008,11 +1008,6 @@
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Range').hasOwnProperty('set') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Range').enumerable is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Range').configurable is true
</span><del>-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').value is RangeException
-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').configurable is true
</del><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'ReadableStream').value is ReadableStream
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'ReadableStream').hasOwnProperty('get') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'ReadableStream').hasOwnProperty('set') is false
</span></span></pre></div>
<a id="trunkLayoutTestsplatformmacmavericksjsdomglobalconstructorsattributesexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -988,11 +988,6 @@
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Range').hasOwnProperty('set') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Range').enumerable is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Range').configurable is true
</span><del>-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').value is RangeException
-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').configurable is true
</del><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'ReadableStream').value is ReadableStream
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'ReadableStream').hasOwnProperty('get') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'ReadableStream').hasOwnProperty('set') is false
</span></span></pre></div>
<a id="trunkLayoutTestsplatformmacyosemitejsdomglobalconstructorsattributesexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -1008,11 +1008,6 @@
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Range').hasOwnProperty('set') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Range').enumerable is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Range').configurable is true
</span><del>-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').value is RangeException
-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').configurable is true
</del><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'ReadableStream').value is ReadableStream
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'ReadableStream').hasOwnProperty('get') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'ReadableStream').hasOwnProperty('set') is false
</span></span></pre></div>
<a id="trunkLayoutTestsplatformwinjsdomglobalconstructorsattributesexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/win/js/dom/global-constructors-attributes-expected.txt (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/win/js/dom/global-constructors-attributes-expected.txt        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/LayoutTests/platform/win/js/dom/global-constructors-attributes-expected.txt        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -858,11 +858,6 @@
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Range').hasOwnProperty('set') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Range').enumerable is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Range').configurable is true
</span><del>-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').value is RangeException
-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'RangeException').configurable is true
</del><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'ReadableStream').value is ReadableStream
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'ReadableStream').hasOwnProperty('get') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'ReadableStream').hasOwnProperty('set') is false
</span></span></pre></div>
<a id="trunkSourceWebCoreCMakeListstxt"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/CMakeLists.txt (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/CMakeLists.txt        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/Source/WebCore/CMakeLists.txt        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -420,7 +420,6 @@
</span><span class="cx">     dom/ProcessingInstruction.idl
</span><span class="cx">     dom/ProgressEvent.idl
</span><span class="cx">     dom/Range.idl
</span><del>-    dom/RangeException.idl
</del><span class="cx">     dom/RequestAnimationFrameCallback.idl
</span><span class="cx">     dom/SecurityPolicyViolationEvent.idl
</span><span class="cx">     dom/StringCallback.idl
</span><span class="lines">@@ -1455,7 +1454,6 @@
</span><span class="cx">     dom/PseudoElement.cpp
</span><span class="cx">     dom/QualifiedName.cpp
</span><span class="cx">     dom/Range.cpp
</span><del>-    dom/RangeException.cpp
</del><span class="cx">     dom/RegisteredEventListener.cpp
</span><span class="cx">     dom/ScopedEventQueue.cpp
</span><span class="cx">     dom/ScriptElement.cpp
</span></span></pre></div>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/Source/WebCore/ChangeLog        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -1,3 +1,53 @@
</span><ins>+2015-08-31  Chris Dumez  &lt;cdumez@apple.com&gt;
+
+        Range API is throwing wrong exception type
+        https://bugs.webkit.org/show_bug.cgi?id=148648
+
+        Reviewed by Ryosuke Niwa.
+
+        The RangeException type does not exist in the latest DOM specification.
+        Instead, the Range API is throwing regular DOMExceptions [1]:
+        https://dom.spec.whatwg.org/#range
+
+        The error codes also differ. RangeException.INVALID_NODE_TYPE_ERR (2)
+        is replaced with DOMException.INVALID_NODE_TYPE_ERR (24).
+        RangeException.BAD_BOUNDARYPOINTS_ERR (1) is replaced by
+        DOMException.INVALID_STATE_ERR (11), as per:
+        https://dom.spec.whatwg.org/#dom-range-surroundcontents (step 1).
+
+        This patch aligns WebKit's behavior with the specification and with
+        other browsers (tested Firefox and Chrome).
+
+        [1] https://heycam.github.io/webidl/#dfn-DOMException
+
+        No new tests, covered by existing tests (rebaselined):
+        http/tests/w3c/dom/ranges/Range-comparePoint.html
+        http/tests/w3c/dom/ranges/Range-isPointInRange.html
+        http/tests/w3c/dom/ranges/Range-selectNode.html
+        http/tests/w3c/dom/ranges/Range-set.html
+        http/tests/w3c/dom/ranges/Range-surroundContents.html
+
+        * CMakeLists.txt:
+        * DerivedSources.cpp:
+        * DerivedSources.make:
+        * WebCore.vcxproj/WebCore.vcxproj:
+        * WebCore.vcxproj/WebCore.vcxproj.filters:
+        * WebCore.xcodeproj/project.pbxproj:
+        * bindings/js/JSExceptionBase.cpp:
+        (WebCore::toExceptionBase): Deleted.
+        * dom/DOMAllInOne.cpp:
+        * dom/DOMExceptions.in:
+        * dom/Range.cpp:
+        (WebCore::Range::insertNode):
+        (WebCore::Range::checkNodeWOffset):
+        (WebCore::Range::checkNodeBA):
+        (WebCore::Range::selectNode):
+        (WebCore::Range::selectNodeContents):
+        (WebCore::Range::surroundContents):
+        * dom/RangeException.cpp: Removed.
+        * dom/RangeException.h: Removed.
+        * dom/RangeException.idl: Removed.
+
</ins><span class="cx"> 2015-08-31  Yusuke Suzuki  &lt;utatane.tea@gmail.com&gt;
</span><span class="cx"> 
</span><span class="cx">         [ES6] Introduce ModuleProgramExecutable families and compile Module code to bytecode
</span></span></pre></div>
<a id="trunkSourceWebCoreDerivedSourcescpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/DerivedSources.cpp (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/DerivedSources.cpp        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/Source/WebCore/DerivedSources.cpp        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -305,7 +305,6 @@
</span><span class="cx"> #include &quot;JSProgressEvent.cpp&quot;
</span><span class="cx"> #include &quot;JSRadioNodeList.cpp&quot;
</span><span class="cx"> #include &quot;JSRange.cpp&quot;
</span><del>-#include &quot;JSRangeException.cpp&quot;
</del><span class="cx"> #if ENABLE(STREAMS_API)
</span><span class="cx"> #include &quot;JSReadableStream.cpp&quot;
</span><span class="cx"> #include &quot;JSReadableStreamController.cpp&quot;
</span></span></pre></div>
<a id="trunkSourceWebCoreDerivedSourcesmake"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/DerivedSources.make (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/DerivedSources.make        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/Source/WebCore/DerivedSources.make        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -317,7 +317,6 @@
</span><span class="cx">     $(WebCore)/dom/ProgressEvent.idl \
</span><span class="cx">     $(WebCore)/dom/ProgressEvent.idl \
</span><span class="cx">     $(WebCore)/dom/Range.idl \
</span><del>-    $(WebCore)/dom/RangeException.idl \
</del><span class="cx">     $(WebCore)/dom/RequestAnimationFrameCallback.idl \
</span><span class="cx">     $(WebCore)/dom/SecurityPolicyViolationEvent.idl \
</span><span class="cx">     $(WebCore)/dom/StringCallback.idl \
</span></span></pre></div>
<a id="trunkSourceWebCoreWebCorevcxprojWebCorevcxproj"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -3932,20 +3932,6 @@
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Production|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Production|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="cx">     &lt;/ClCompile&gt;
</span><del>-    &lt;ClCompile Include=&quot;$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSRangeException.cpp&quot;&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug_WinCairo|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug_WinCairo|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='DebugSuffix|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='DebugSuffix|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Release|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Release|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Release_WinCairo|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Release_WinCairo|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Production|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Production|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-    &lt;/ClCompile&gt;
</del><span class="cx">     &lt;ClCompile Include=&quot;$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSReadableStream.cpp&quot;&gt;
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="lines">@@ -14783,20 +14769,6 @@
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Production|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Production|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="cx">     &lt;/ClCompile&gt;
</span><del>-    &lt;ClCompile Include=&quot;..\dom\RangeException.cpp&quot;&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug_WinCairo|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug_WinCairo|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='DebugSuffix|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='DebugSuffix|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Release|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Release|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Release_WinCairo|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Release_WinCairo|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Production|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Production|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-    &lt;/ClCompile&gt;
</del><span class="cx">     &lt;ClCompile Include=&quot;..\dom\RegisteredEventListener.cpp&quot;&gt;
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="lines">@@ -20059,7 +20031,6 @@
</span><span class="cx">     &lt;ClInclude Include=&quot;$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSProgressEvent.h&quot; /&gt;
</span><span class="cx">     &lt;ClInclude Include=&quot;$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSRadioNodeList.h&quot; /&gt;
</span><span class="cx">     &lt;ClInclude Include=&quot;$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSRange.h&quot; /&gt;
</span><del>-    &lt;ClInclude Include=&quot;$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSRangeException.h&quot; /&gt;
</del><span class="cx">     &lt;ClInclude Include=&quot;$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSReadableStream.h&quot; /&gt;
</span><span class="cx">     &lt;ClInclude Include=&quot;$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSReadableStreamController.h&quot; /&gt;
</span><span class="cx">     &lt;ClInclude Include=&quot;$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSReadableStreamReader.h&quot; /&gt;
</span><span class="lines">@@ -22115,7 +22086,6 @@
</span><span class="cx">     &lt;ClInclude Include=&quot;..\dom\QualifiedName.h&quot; /&gt;
</span><span class="cx">     &lt;ClInclude Include=&quot;..\dom\Range.h&quot; /&gt;
</span><span class="cx">     &lt;ClInclude Include=&quot;..\dom\RangeBoundaryPoint.h&quot; /&gt;
</span><del>-    &lt;ClInclude Include=&quot;..\dom\RangeException.h&quot; /&gt;
</del><span class="cx">     &lt;ClInclude Include=&quot;..\dom\RegisteredEventListener.h&quot; /&gt;
</span><span class="cx">     &lt;ClInclude Include=&quot;..\dom\RenderedDocumentMarker.h&quot; /&gt;
</span><span class="cx">     &lt;ClInclude Include=&quot;..\dom\ScopedEventQueue.h&quot; /&gt;
</span></span></pre></div>
<a id="trunkSourceWebCoreWebCorevcxprojWebCorevcxprojfilters"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -3285,9 +3285,6 @@
</span><span class="cx">     &lt;ClCompile Include=&quot;..\dom\Range.cpp&quot;&gt;
</span><span class="cx">       &lt;Filter&gt;dom&lt;/Filter&gt;
</span><span class="cx">     &lt;/ClCompile&gt;
</span><del>-    &lt;ClCompile Include=&quot;..\dom\RangeException.cpp&quot;&gt;
-      &lt;Filter&gt;dom&lt;/Filter&gt;
-    &lt;/ClCompile&gt;
</del><span class="cx">     &lt;ClCompile Include=&quot;..\dom\RegisteredEventListener.cpp&quot;&gt;
</span><span class="cx">       &lt;Filter&gt;dom&lt;/Filter&gt;
</span><span class="cx">     &lt;/ClCompile&gt;
</span><span class="lines">@@ -5698,9 +5695,6 @@
</span><span class="cx">     &lt;ClCompile Include=&quot;$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSRange.cpp&quot;&gt;
</span><span class="cx">       &lt;Filter&gt;DerivedSources&lt;/Filter&gt;
</span><span class="cx">     &lt;/ClCompile&gt;
</span><del>-    &lt;ClCompile Include=&quot;$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSRangeException.cpp&quot;&gt;
-      &lt;Filter&gt;DerivedSources&lt;/Filter&gt;
-    &lt;/ClCompile&gt;
</del><span class="cx">     &lt;ClCompile Include=&quot;$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSReadableStream.cpp&quot;&gt;
</span><span class="cx">       &lt;Filter&gt;DerivedSources&lt;/Filter&gt;
</span><span class="cx">     &lt;/ClCompile&gt;
</span><span class="lines">@@ -10403,9 +10397,6 @@
</span><span class="cx">     &lt;ClInclude Include=&quot;..\dom\RangeBoundaryPoint.h&quot;&gt;
</span><span class="cx">       &lt;Filter&gt;dom&lt;/Filter&gt;
</span><span class="cx">     &lt;/ClInclude&gt;
</span><del>-    &lt;ClInclude Include=&quot;..\dom\RangeException.h&quot;&gt;
-      &lt;Filter&gt;dom&lt;/Filter&gt;
-    &lt;/ClInclude&gt;
</del><span class="cx">     &lt;ClInclude Include=&quot;..\dom\RegisteredEventListener.h&quot;&gt;
</span><span class="cx">       &lt;Filter&gt;dom&lt;/Filter&gt;
</span><span class="cx">     &lt;/ClInclude&gt;
</span><span class="lines">@@ -13090,9 +13081,6 @@
</span><span class="cx">     &lt;ClInclude Include=&quot;$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSRange.h&quot;&gt;
</span><span class="cx">       &lt;Filter&gt;DerivedSources&lt;/Filter&gt;
</span><span class="cx">     &lt;/ClInclude&gt;
</span><del>-    &lt;ClInclude Include=&quot;$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSRangeException.h&quot;&gt;
-      &lt;Filter&gt;DerivedSources&lt;/Filter&gt;
-    &lt;/ClInclude&gt;
</del><span class="cx">     &lt;ClInclude Include=&quot;$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSRect.h&quot;&gt;
</span><span class="cx">       &lt;Filter&gt;DerivedSources&lt;/Filter&gt;
</span><span class="cx">     &lt;/ClInclude&gt;
</span></span></pre></div>
<a id="trunkSourceWebCoreWebCorexcodeprojprojectpbxproj"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -3691,7 +3691,6 @@
</span><span class="cx">                 978AD67414130A8D00C7CAE3 /* HTMLSpanElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 978AD67114130A8D00C7CAE3 /* HTMLSpanElement.cpp */; };
</span><span class="cx">                 978AD67514130A8D00C7CAE3 /* HTMLSpanElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 978AD67214130A8D00C7CAE3 /* HTMLSpanElement.h */; };
</span><span class="cx">                 978D07B6145A0F030096908D /* FileException.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 978D07B5145A0F030096908D /* FileException.cpp */; };
</span><del>-                978D07BA145A0F3C0096908D /* RangeException.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 978D07B9145A0F3C0096908D /* RangeException.cpp */; };
</del><span class="cx">                 978D07BC145A0F560096908D /* EventException.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 978D07BB145A0F560096908D /* EventException.cpp */; };
</span><span class="cx">                 978D07BE145A0F6C0096908D /* DOMCoreException.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 978D07BD145A0F6C0096908D /* DOMCoreException.cpp */; };
</span><span class="cx">                 978D07CA145A10160096908D /* SVGException.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 978D07C9145A10160096908D /* SVGException.cpp */; };
</span><span class="lines">@@ -6006,9 +6005,6 @@
</span><span class="cx">                 D0EDA775143E303C0028E383 /* CachedRawResource.h in Headers */ = {isa = PBXBuildFile; fileRef = D0EDA773143E303C0028E383 /* CachedRawResource.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="cx">                 D0FF2A5D11F8C45A007E74E0 /* PingLoader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D0FF2A5B11F8C45A007E74E0 /* PingLoader.cpp */; };
</span><span class="cx">                 D0FF2A5E11F8C45A007E74E0 /* PingLoader.h in Headers */ = {isa = PBXBuildFile; fileRef = D0FF2A5C11F8C45A007E74E0 /* PingLoader.h */; };
</span><del>-                D23CA55D0AB0EAAE005108A5 /* JSRangeException.h in Headers */ = {isa = PBXBuildFile; fileRef = D23CA55C0AB0EAAE005108A5 /* JSRangeException.h */; };
-                D23CA55F0AB0EAB6005108A5 /* JSRangeException.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D23CA55E0AB0EAB6005108A5 /* JSRangeException.cpp */; };
-                D23CA56C0AB0EB8D005108A5 /* RangeException.h in Headers */ = {isa = PBXBuildFile; fileRef = D23CA56B0AB0EB8D005108A5 /* RangeException.h */; };
</del><span class="cx">                 D302754912A5FE84004BD828 /* RenderDetailsMarker.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D302754512A5FE84004BD828 /* RenderDetailsMarker.cpp */; };
</span><span class="cx">                 D302754A12A5FE84004BD828 /* RenderDetailsMarker.h in Headers */ = {isa = PBXBuildFile; fileRef = D302754612A5FE84004BD828 /* RenderDetailsMarker.h */; };
</span><span class="cx">                 D359D789129CA2710006E5D2 /* HTMLDetailsElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D359D786129CA2710006E5D2 /* HTMLDetailsElement.cpp */; };
</span><span class="lines">@@ -11046,7 +11042,6 @@
</span><span class="cx">                 978AD67214130A8D00C7CAE3 /* HTMLSpanElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HTMLSpanElement.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 978AD67314130A8D00C7CAE3 /* HTMLSpanElement.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = HTMLSpanElement.idl; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 978D07B5145A0F030096908D /* FileException.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FileException.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><del>-                978D07B9145A0F3C0096908D /* RangeException.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RangeException.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</del><span class="cx">                 978D07BB145A0F560096908D /* EventException.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = EventException.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 978D07BD145A0F6C0096908D /* DOMCoreException.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DOMCoreException.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 978D07C9145A10160096908D /* SVGException.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SVGException.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="lines">@@ -13698,10 +13693,6 @@
</span><span class="cx">                 D0EDA773143E303C0028E383 /* CachedRawResource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CachedRawResource.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 D0FF2A5B11F8C45A007E74E0 /* PingLoader.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PingLoader.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 D0FF2A5C11F8C45A007E74E0 /* PingLoader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PingLoader.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><del>-                D23CA5480AB0E983005108A5 /* RangeException.idl */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = RangeException.idl; sourceTree = &quot;&lt;group&gt;&quot;; };
-                D23CA55C0AB0EAAE005108A5 /* JSRangeException.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = JSRangeException.h; sourceTree = &quot;&lt;group&gt;&quot;; };
-                D23CA55E0AB0EAB6005108A5 /* JSRangeException.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = JSRangeException.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
-                D23CA56B0AB0EB8D005108A5 /* RangeException.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = RangeException.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</del><span class="cx">                 D302754512A5FE84004BD828 /* RenderDetailsMarker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderDetailsMarker.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 D302754612A5FE84004BD828 /* RenderDetailsMarker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderDetailsMarker.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 D359D786129CA2710006E5D2 /* HTMLDetailsElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HTMLDetailsElement.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="lines">@@ -21757,8 +21748,6 @@
</span><span class="cx">                         children = (
</span><span class="cx">                                 65DF31ED09D1CC60000BE325 /* JSRange.cpp */,
</span><span class="cx">                                 65DF31EE09D1CC60000BE325 /* JSRange.h */,
</span><del>-                                D23CA55E0AB0EAB6005108A5 /* JSRangeException.cpp */,
-                                D23CA55C0AB0EAAE005108A5 /* JSRangeException.h */,
</del><span class="cx">                         );
</span><span class="cx">                         name = Ranges;
</span><span class="cx">                         sourceTree = &quot;&lt;group&gt;&quot;;
</span><span class="lines">@@ -23464,9 +23453,6 @@
</span><span class="cx">                                 F523D30402DE4476018635CA /* Range.h */,
</span><span class="cx">                                 936DD03A09CEAC270056AE8C /* Range.idl */,
</span><span class="cx">                                 93D9D53B0DA27E180077216C /* RangeBoundaryPoint.h */,
</span><del>-                                978D07B9145A0F3C0096908D /* RangeException.cpp */,
-                                D23CA56B0AB0EB8D005108A5 /* RangeException.h */,
-                                D23CA5480AB0E983005108A5 /* RangeException.idl */,
</del><span class="cx">                                 A84D827B11D333ED00972990 /* RawDataDocumentParser.h */,
</span><span class="cx">                                 85031B350A44EFC700F992E0 /* RegisteredEventListener.cpp */,
</span><span class="cx">                                 85031B360A44EFC700F992E0 /* RegisteredEventListener.h */,
</span><span class="lines">@@ -25690,7 +25676,6 @@
</span><span class="cx">                                 077664FD183E6B5C00133B92 /* JSQuickTimePluginReplacement.h in Headers */,
</span><span class="cx">                                 B658FFA21522EF3A00DD5595 /* JSRadioNodeList.h in Headers */,
</span><span class="cx">                                 65DF320209D1CC60000BE325 /* JSRange.h in Headers */,
</span><del>-                                D23CA55D0AB0EAAE005108A5 /* JSRangeException.h in Headers */,
</del><span class="cx">                                 7C4C96DD1AD4483500365A50 /* JSReadableStream.h in Headers */,
</span><span class="cx">                                 6C4C96DF1AD4483500365A50 /* JSReadableStreamController.h in Headers */,
</span><span class="cx">                                 7C4C96DF1AD4483500365A50 /* JSReadableStreamReader.h in Headers */,
</span><span class="lines">@@ -26389,7 +26374,6 @@
</span><span class="cx">                                 B658FFA61522EFAA00DD5595 /* RadioNodeList.h in Headers */,
</span><span class="cx">                                 93F1991808245E59001E9ABC /* Range.h in Headers */,
</span><span class="cx">                                 93D9D53C0DA27E180077216C /* RangeBoundaryPoint.h in Headers */,
</span><del>-                                D23CA56C0AB0EB8D005108A5 /* RangeException.h in Headers */,
</del><span class="cx">                                 F55B3DCE1251F12D003EF269 /* RangeInputType.h in Headers */,
</span><span class="cx">                                 6E84E9E117668BF100815B68 /* RasterShape.h in Headers */,
</span><span class="cx">                                 A84D827C11D333ED00972990 /* RawDataDocumentParser.h in Headers */,
</span><span class="lines">@@ -29286,7 +29270,6 @@
</span><span class="cx">                                 077664FC183E6B5C00133B92 /* JSQuickTimePluginReplacement.cpp in Sources */,
</span><span class="cx">                                 B658FFA11522EF3A00DD5595 /* JSRadioNodeList.cpp in Sources */,
</span><span class="cx">                                 65DF320109D1CC60000BE325 /* JSRange.cpp in Sources */,
</span><del>-                                D23CA55F0AB0EAB6005108A5 /* JSRangeException.cpp in Sources */,
</del><span class="cx">                                 7C4C96DC1AD4483500365A50 /* JSReadableStream.cpp in Sources */,
</span><span class="cx">                                 6C4C96DE1AD4483500365A50 /* JSReadableStreamController.cpp in Sources */,
</span><span class="cx">                                 41189EF91AD8273700B90A0D /* JSReadableStreamControllerCustom.cpp in Sources */,
</span><span class="lines">@@ -29927,7 +29910,6 @@
</span><span class="cx">                                 F55B3DCB1251F12D003EF269 /* RadioInputType.cpp in Sources */,
</span><span class="cx">                                 B658FFA51522EFAA00DD5595 /* RadioNodeList.cpp in Sources */,
</span><span class="cx">                                 93F19AB908245E59001E9ABC /* Range.cpp in Sources */,
</span><del>-                                978D07BA145A0F3C0096908D /* RangeException.cpp in Sources */,
</del><span class="cx">                                 F55B3DCD1251F12D003EF269 /* RangeInputType.cpp in Sources */,
</span><span class="cx">                                 6E84E9E017668BEE00815B68 /* RasterShape.cpp in Sources */,
</span><span class="cx">                                 4198BDF01A81142200B22FB5 /* ReadableJSStream.cpp in Sources */,
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsjsJSExceptionBasecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/js/JSExceptionBase.cpp (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/js/JSExceptionBase.cpp        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/Source/WebCore/bindings/js/JSExceptionBase.cpp        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -28,7 +28,6 @@
</span><span class="cx"> 
</span><span class="cx"> #include &quot;JSDOMCoreException.h&quot;
</span><span class="cx"> #include &quot;JSEventException.h&quot;
</span><del>-#include &quot;JSRangeException.h&quot;
</del><span class="cx"> #include &quot;JSSQLException.h&quot;
</span><span class="cx"> #include &quot;JSSVGException.h&quot;
</span><span class="cx"> #include &quot;JSXMLHttpRequestException.h&quot;
</span><span class="lines">@@ -41,8 +40,6 @@
</span><span class="cx"> {
</span><span class="cx">     if (DOMCoreException* domException = JSDOMCoreException::toWrapped(value))
</span><span class="cx">         return reinterpret_cast&lt;ExceptionBase*&gt;(domException);
</span><del>-    if (RangeException* rangeException = JSRangeException::toWrapped(value))
-        return reinterpret_cast&lt;ExceptionBase*&gt;(rangeException);
</del><span class="cx">     if (EventException* eventException = JSEventException::toWrapped(value))
</span><span class="cx">         return reinterpret_cast&lt;ExceptionBase*&gt;(eventException);
</span><span class="cx">     if (XMLHttpRequestException* xmlHttpException = JSXMLHttpRequestException::toWrapped(value))
</span></span></pre></div>
<a id="trunkSourceWebCoredomDOMAllInOnecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/dom/DOMAllInOne.cpp (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/dom/DOMAllInOne.cpp        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/Source/WebCore/dom/DOMAllInOne.cpp        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -128,7 +128,6 @@
</span><span class="cx"> // https://bugs.webkit.org/show_bug.cgi?id=146586
</span><span class="cx"> // #include &quot;QualifiedName.cpp&quot;
</span><span class="cx"> #include &quot;Range.cpp&quot;
</span><del>-#include &quot;RangeException.cpp&quot;
</del><span class="cx"> #include &quot;RegisteredEventListener.cpp&quot;
</span><span class="cx"> #include &quot;ScopedEventQueue.cpp&quot;
</span><span class="cx"> #include &quot;ScriptElement.cpp&quot;
</span></span></pre></div>
<a id="trunkSourceWebCoredomDOMExceptionsin"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/dom/DOMExceptions.in (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/dom/DOMExceptions.in        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/Source/WebCore/dom/DOMExceptions.in        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -3,7 +3,6 @@
</span><span class="cx"> DOMCoreException
</span><span class="cx"> EventException
</span><span class="cx"> FileException
</span><del>-RangeException
</del><span class="cx"> SQLException
</span><span class="cx"> SVGException
</span><span class="cx"> XMLHttpRequestException
</span></span></pre></div>
<a id="trunkSourceWebCoredomRangecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/dom/Range.cpp (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/dom/Range.cpp        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/Source/WebCore/dom/Range.cpp        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -37,7 +37,6 @@
</span><span class="cx"> #include &quot;NodeWithIndex.h&quot;
</span><span class="cx"> #include &quot;Page.h&quot;
</span><span class="cx"> #include &quot;ProcessingInstruction.h&quot;
</span><del>-#include &quot;RangeException.h&quot;
</del><span class="cx"> #include &quot;RenderBoxModelObject.h&quot;
</span><span class="cx"> #include &quot;RenderText.h&quot;
</span><span class="cx"> #include &quot;ScopedEventQueue.h&quot;
</span><span class="lines">@@ -907,11 +906,11 @@
</span><span class="cx">     case Node::ATTRIBUTE_NODE:
</span><span class="cx">     case Node::ENTITY_NODE:
</span><span class="cx">     case Node::DOCUMENT_NODE:
</span><del>-        ec = RangeException::INVALID_NODE_TYPE_ERR;
</del><ins>+        ec = INVALID_NODE_TYPE_ERR;
</ins><span class="cx">         return;
</span><span class="cx">     default:
</span><span class="cx">         if (newNode-&gt;isShadowRoot()) {
</span><del>-            ec = RangeException::INVALID_NODE_TYPE_ERR;
</del><ins>+            ec = INVALID_NODE_TYPE_ERR;
</ins><span class="cx">             return;
</span><span class="cx">         }
</span><span class="cx">         break;
</span><span class="lines">@@ -1005,7 +1004,7 @@
</span><span class="cx">     switch (n-&gt;nodeType()) {
</span><span class="cx">         case Node::DOCUMENT_TYPE_NODE:
</span><span class="cx">         case Node::ENTITY_NODE:
</span><del>-            ec = RangeException::INVALID_NODE_TYPE_ERR;
</del><ins>+            ec = INVALID_NODE_TYPE_ERR;
</ins><span class="cx">             return nullptr;
</span><span class="cx">         case Node::CDATA_SECTION_NODE:
</span><span class="cx">         case Node::COMMENT_NODE:
</span><span class="lines">@@ -1043,7 +1042,7 @@
</span><span class="cx">         case Node::DOCUMENT_FRAGMENT_NODE:
</span><span class="cx">         case Node::DOCUMENT_NODE:
</span><span class="cx">         case Node::ENTITY_NODE:
</span><del>-            ec = RangeException::INVALID_NODE_TYPE_ERR;
</del><ins>+            ec = INVALID_NODE_TYPE_ERR;
</ins><span class="cx">             return;
</span><span class="cx">         case Node::CDATA_SECTION_NODE:
</span><span class="cx">         case Node::COMMENT_NODE:
</span><span class="lines">@@ -1074,7 +1073,7 @@
</span><span class="cx">         case Node::PROCESSING_INSTRUCTION_NODE:
</span><span class="cx">         case Node::TEXT_NODE:
</span><span class="cx">         case Node::XPATH_NAMESPACE_NODE:
</span><del>-            ec = RangeException::INVALID_NODE_TYPE_ERR;
</del><ins>+            ec = INVALID_NODE_TYPE_ERR;
</ins><span class="cx">             return;
</span><span class="cx">     }
</span><span class="cx"> }
</span><span class="lines">@@ -1154,7 +1153,7 @@
</span><span class="cx">                 break;
</span><span class="cx">             case Node::DOCUMENT_TYPE_NODE:
</span><span class="cx">             case Node::ENTITY_NODE:
</span><del>-                ec = RangeException::INVALID_NODE_TYPE_ERR;
</del><ins>+                ec = INVALID_NODE_TYPE_ERR;
</ins><span class="cx">                 return;
</span><span class="cx">         }
</span><span class="cx">     }
</span><span class="lines">@@ -1173,7 +1172,7 @@
</span><span class="cx">         case Node::DOCUMENT_FRAGMENT_NODE:
</span><span class="cx">         case Node::DOCUMENT_NODE:
</span><span class="cx">         case Node::ENTITY_NODE:
</span><del>-            ec = RangeException::INVALID_NODE_TYPE_ERR;
</del><ins>+            ec = INVALID_NODE_TYPE_ERR;
</ins><span class="cx">             return;
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="lines">@@ -1211,7 +1210,7 @@
</span><span class="cx">                 break;
</span><span class="cx">             case Node::DOCUMENT_TYPE_NODE:
</span><span class="cx">             case Node::ENTITY_NODE:
</span><del>-                ec = RangeException::INVALID_NODE_TYPE_ERR;
</del><ins>+                ec = INVALID_NODE_TYPE_ERR;
</ins><span class="cx">                 return;
</span><span class="cx">         }
</span><span class="cx">     }
</span><span class="lines">@@ -1240,7 +1239,7 @@
</span><span class="cx">         case Node::DOCUMENT_NODE:
</span><span class="cx">         case Node::DOCUMENT_TYPE_NODE:
</span><span class="cx">         case Node::ENTITY_NODE:
</span><del>-            ec = RangeException::INVALID_NODE_TYPE_ERR;
</del><ins>+            ec = INVALID_NODE_TYPE_ERR;
</ins><span class="cx">             return;
</span><span class="cx">         case Node::CDATA_SECTION_NODE:
</span><span class="cx">         case Node::COMMENT_NODE:
</span><span class="lines">@@ -1280,7 +1279,8 @@
</span><span class="cx">     // FIXME: Do we need a check if the node would end up with a child node of a type not
</span><span class="cx">     // allowed by the type of node?
</span><span class="cx"> 
</span><del>-    // BAD_BOUNDARYPOINTS_ERR: Raised if the Range partially selects a non-Text node.
</del><ins>+    // INVALID_STATE_ERR: Raised if the Range partially selects a non-Text node.
+    // https://dom.spec.whatwg.org/#dom-range-surroundcontents (step 1).
</ins><span class="cx">     Node* startNonTextContainer = &amp;startContainer();
</span><span class="cx">     if (startNonTextContainer-&gt;nodeType() == Node::TEXT_NODE)
</span><span class="cx">         startNonTextContainer = startNonTextContainer-&gt;parentNode();
</span><span class="lines">@@ -1288,7 +1288,7 @@
</span><span class="cx">     if (endNonTextContainer-&gt;nodeType() == Node::TEXT_NODE)
</span><span class="cx">         endNonTextContainer = endNonTextContainer-&gt;parentNode();
</span><span class="cx">     if (startNonTextContainer != endNonTextContainer) {
</span><del>-        ec = RangeException::BAD_BOUNDARYPOINTS_ERR;
</del><ins>+        ec = INVALID_STATE_ERR;
</ins><span class="cx">         return;
</span><span class="cx">     }
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebCoredomRangeExceptioncpp"></a>
<div class="delfile"><h4>Deleted: trunk/Source/WebCore/dom/RangeException.cpp (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/dom/RangeException.cpp        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/Source/WebCore/dom/RangeException.cpp        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -1,62 +0,0 @@
</span><del>-/*
- * 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:
- *
- * 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.
- * 3.  Neither the name of Apple Inc. (&quot;Apple&quot;) 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 GOOGLE AND ITS CONTRIBUTORS &quot;AS IS&quot; 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 OR ITS 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 &quot;config.h&quot;
-#include &quot;RangeException.h&quot;
-
-#include &quot;ExceptionCodeDescription.h&quot;
-
-namespace WebCore {
-
-static struct RangeExceptionNameDescription {
-    const char* const name;
-    const char* const description;
-} rangeExceptions[] = {
-    { &quot;BAD_BOUNDARYPOINTS_ERR&quot;, &quot;The boundary-points of a Range did not meet specific requirements.&quot; },
-    { &quot;INVALID_NODE_TYPE_ERR&quot;, &quot;The container of an boundary-point of a Range was being set to either a node of an invalid type or a node with an ancestor of an invalid type.&quot; }
-};
-
-bool RangeException::initializeDescription(ExceptionCode ec, ExceptionCodeDescription* description)
-{
-    if (ec &lt; RangeExceptionOffset || ec &gt; RangeExceptionMax)
-        return false;
-
-    description-&gt;typeName = &quot;DOM Range&quot;;
-    description-&gt;code = ec - RangeExceptionOffset;
-    description-&gt;type = RangeExceptionType;
-
-    size_t tableSize = WTF_ARRAY_LENGTH(rangeExceptions);
-    size_t tableIndex = ec - BAD_BOUNDARYPOINTS_ERR;
-
-    description-&gt;name = tableIndex &lt; tableSize ? rangeExceptions[tableIndex].name : 0;
-    description-&gt;description = tableIndex &lt; tableSize ? rangeExceptions[tableIndex].description : 0;
-
-    return true;
-}
-
-} // namespace WebCore
</del></span></pre></div>
<a id="trunkSourceWebCoredomRangeExceptionh"></a>
<div class="delfile"><h4>Deleted: trunk/Source/WebCore/dom/RangeException.h (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/dom/RangeException.h        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/Source/WebCore/dom/RangeException.h        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -1,58 +0,0 @@
</span><del>-/*
- * (C) 1999 Lars Knoll (knoll@kde.org)
- * (C) 2000 Gunnstein Lye (gunnstein@netcom.no)
- * (C) 2000 Frederik Holljen (frederik.holljen@hig.no)
- * (C) 2001 Peter Kelly (pmk@post.com)
- * Copyright (C) 2004, 2005, 2006 Apple Inc.
- *
- * 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 RangeException_h
-#define RangeException_h
-
-#include &quot;ExceptionBase.h&quot;
-
-namespace WebCore {
-
-class RangeException : public ExceptionBase {
-public:
-    static Ref&lt;RangeException&gt; create(const ExceptionCodeDescription&amp; description)
-    {
-        return adoptRef(*new RangeException(description));
-    }
-
-    static const int RangeExceptionOffset = 200;
-    static const int RangeExceptionMax = 299;
-
-    enum RangeExceptionCode {
-        BAD_BOUNDARYPOINTS_ERR = RangeExceptionOffset + 1,
-        INVALID_NODE_TYPE_ERR
-    };
-
-    static bool initializeDescription(ExceptionCode, ExceptionCodeDescription*);
-
-private:
-    explicit RangeException(const ExceptionCodeDescription&amp; description)
-        : ExceptionBase(description)
-    {
-    }
-};
-
-} // namespace WebCore
-
-#endif // RangeException_h
</del></span></pre></div>
<a id="trunkSourceWebCoredomRangeExceptionidl"></a>
<div class="delfile"><h4>Deleted: trunk/Source/WebCore/dom/RangeException.idl (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/dom/RangeException.idl        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/Source/WebCore/dom/RangeException.idl        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -1,38 +0,0 @@
</span><del>-/*
- * Copyright (C) 2006, 2007 Apple 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.
- */
-
-[
-    DoNotCheckConstants,
-    ImplementationLacksVTable,
-] exception RangeException {
-
-    readonly attribute unsigned short   code;
-    readonly attribute DOMString        name;
-    readonly attribute DOMString        message;
-
-#if defined(LANGUAGE_JAVASCRIPT) &amp;&amp; LANGUAGE_JAVASCRIPT
-    [NotEnumerable] DOMString toString();
-#endif
-
-    // DOM Level 2
-
-    const unsigned short BAD_BOUNDARYPOINTS_ERR = 1;
-    const unsigned short INVALID_NODE_TYPE_ERR = 2;
-};
-
</del></span></pre></div>
<a id="trunkSourceWebKitwinChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/ChangeLog (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/ChangeLog        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/Source/WebKit/win/ChangeLog        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -1,3 +1,13 @@
</span><ins>+2015-08-31  Chris Dumez  &lt;cdumez@apple.com&gt;
+
+        Range API is throwing wrong exception type
+        https://bugs.webkit.org/show_bug.cgi?id=148648
+
+        Reviewed by Ryosuke Niwa.
+
+        * Interfaces/DOMWindow.idl:
+        Drop outdated comment.
+
</ins><span class="cx"> 2015-08-27  Andy Estes  &lt;aestes@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         [Content Filtering] Determine navigation and content policy before continuing to filter a load
</span></span></pre></div>
<a id="trunkSourceWebKitwinInterfacesDOMWindowidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/Interfaces/DOMWindow.idl (189201 => 189202)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/Interfaces/DOMWindow.idl        2015-09-01 02:05:30 UTC (rev 189201)
+++ trunk/Source/WebKit/win/Interfaces/DOMWindow.idl        2015-09-01 02:25:00 UTC (rev 189202)
</span><span class="lines">@@ -76,7 +76,6 @@
</span><span class="cx">     //attribute NodeConstructor Node;
</span><span class="cx">     //attribute NodeFilterConstructor NodeFilter;
</span><span class="cx">     //attribute RangeConstructor Range;
</span><del>-    //attribute RangeExceptionConstructor RangeException;
</del><span class="cx"> 
</span><span class="cx">     // Mozilla has a separate XMLDocument object for XML documents. 
</span><span class="cx">     // We just use Document for this.
</span></span></pre>
</div>
</div>

</body>
</html>