<!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>[204212] branches/safari-602-branch/LayoutTests</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/204212">204212</a></dd>
<dt>Author</dt> <dd>ryanhaddad@apple.com</dd>
<dt>Date</dt> <dd>2016-08-05 18:19:14 -0700 (Fri, 05 Aug 2016)</dd>
</dl>

<h3>Log Message</h3>
<pre>Test gardening for rdar://problem/27595142.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#branchessafari602branchLayoutTestsChangeLog">branches/safari-602-branch/LayoutTests/ChangeLog</a></li>
<li><a href="#branchessafari602branchLayoutTestsTestExpectations">branches/safari-602-branch/LayoutTests/TestExpectations</a></li>
<li><a href="#branchessafari602branchLayoutTestsplatformiossimulatorTestExpectations">branches/safari-602-branch/LayoutTests/platform/ios-simulator/TestExpectations</a></li>
<li><a href="#branchessafari602branchLayoutTestsplatformiossimulatorwk1TestExpectations">branches/safari-602-branch/LayoutTests/platform/ios-simulator-wk1/TestExpectations</a></li>
<li><a href="#branchessafari602branchLayoutTestsplatformiossimulatorwk2TestExpectations">branches/safari-602-branch/LayoutTests/platform/ios-simulator-wk2/TestExpectations</a></li>
<li><a href="#branchessafari602branchLayoutTestsplatformmacTestExpectations">branches/safari-602-branch/LayoutTests/platform/mac/TestExpectations</a></li>
<li><a href="#branchessafari602branchLayoutTestsplatformmacaccessibilityrolesexposedexpectedtxt">branches/safari-602-branch/LayoutTests/platform/mac/accessibility/roles-exposed-expected.txt</a></li>
<li><a href="#branchessafari602branchLayoutTestsplatformmacjsdomconstructorlengthexpectedtxt">branches/safari-602-branch/LayoutTests/platform/mac/js/dom/constructor-length-expected.txt</a></li>
<li><a href="#branchessafari602branchLayoutTestsplatformmacjsdomglobalconstructorsattributesexpectedtxt">branches/safari-602-branch/LayoutTests/platform/mac/js/dom/global-constructors-attributes-expected.txt</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li>branches/safari-602-branch/LayoutTests/platform/mac/imported/</li>
<li>branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/</li>
<li>branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/</li>
<li>branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/dom/</li>
<li>branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/dom/nodes/</li>
<li><a href="#branchessafari602branchLayoutTestsplatformmacimportedw3cwebplatformtestsdomnodesParentNodequerySelectorAllexpectedtxt">branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/dom/nodes/ParentNode-querySelector-All-expected.txt</a></li>
<li><a href="#branchessafari602branchLayoutTestsplatformmacimportedw3cwebplatformtestsdomnodesParentNodequerySelectorAllxhtexpectedtxt">branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/dom/nodes/ParentNode-querySelector-All-xht-expected.txt</a></li>
<li>branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/</li>
<li>branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/dom/</li>
<li><a href="#branchessafari602branchLayoutTestsplatformmacimportedw3cwebplatformtestshtmldominterfacesexpectedtxt">branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt</a></li>
<li><a href="#branchessafari602branchLayoutTestsplatformmacimportedw3cwebplatformtestshtmldomreflectionformsexpectedtxt">branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/dom/reflection-forms-expected.txt</a></li>
<li>branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/</li>
<li>branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/</li>
<li>branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/constraints/</li>
<li><a href="#branchessafari602branchLayoutTestsplatformmacimportedw3cwebplatformtestshtmlsemanticsformsconstraintsformvalidationvaliditybadInputexpectedtxt">branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-badInput-expected.txt</a></li>
<li><a href="#branchessafari602branchLayoutTestsplatformmacimportedw3cwebplatformtestshtmlsemanticsformsconstraintsformvalidationwillValidateexpectedtxt">branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate-expected.txt</a></li>
<li>branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/textfieldselection/</li>
<li><a href="#branchessafari602branchLayoutTestsplatformmacimportedw3cwebplatformtestshtmlsemanticsformstextfieldselectionselectionnotapplicationexpectedtxt">branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/textfieldselection/selection-not-application-expected.txt</a></li>
<li>branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/</li>
<li><a href="#branchessafari602branchLayoutTestsplatformmacimportedw3cwebplatformtestshtmlsemanticsformstheinputelementselectionexpectedtxt">branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/selection-expected.txt</a></li>
<li><a href="#branchessafari602branchLayoutTestsplatformmacimportedw3cwebplatformtestshtmlsemanticsformstheinputelementtypechangestateexpectedtxt">branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/type-change-state-expected.txt</a></li>
<li><a href="#branchessafari602branchLayoutTestsplatformmacimportedw3cwebplatformtestshtmlsemanticsformstheinputelementvalueModeexpectedtxt">branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/valueMode-expected.txt</a></li>
<li><a href="#branchessafari602branchLayoutTestsplatformmacimportedw3cwebplatformtestshtmlsemanticsinterfacesexpectedtxt">branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/interfaces-expected.txt</a></li>
<li>branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/selectors/</li>
<li>branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/selectors/pseudo-classes/</li>
<li><a href="#branchessafari602branchLayoutTestsplatformmacimportedw3cwebplatformtestshtmlsemanticsselectorspseudoclassesreadwritereadonlyexpectedtxt">branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/selectors/pseudo-classes/readwrite-readonly-expected.txt</a></li>
<li><a href="#branchessafari602branchLayoutTestsplatformmacjsdomdomstaticpropertyforiniterationexpectedtxt">branches/safari-602-branch/LayoutTests/platform/mac/js/dom/dom-static-property-for-in-iteration-expected.txt</a></li>
<li><a href="#branchessafari602branchLayoutTestsplatformmacjsdomglobalconstructorsattributesdedicatedworkerexpectedtxt">branches/safari-602-branch/LayoutTests/platform/mac/js/dom/global-constructors-attributes-dedicated-worker-expected.txt</a></li>
<li><a href="#branchessafari602branchLayoutTestsplatformmacplatformmacfastloaderfileurlmimetypes3expectedtxt">branches/safari-602-branch/LayoutTests/platform/mac/platform/mac/fast/loader/file-url-mimetypes-3-expected.txt</a></li>
<li><a href="#branchessafari602branchLayoutTestsplatformmacsvgcssgetComputedStylebasicexpectedtxt">branches/safari-602-branch/LayoutTests/platform/mac/svg/css/getComputedStyle-basic-expected.txt</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="branchessafari602branchLayoutTestsChangeLog"></a>
<div class="modfile"><h4>Modified: branches/safari-602-branch/LayoutTests/ChangeLog (204211 => 204212)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-602-branch/LayoutTests/ChangeLog        2016-08-06 01:16:43 UTC (rev 204211)
+++ branches/safari-602-branch/LayoutTests/ChangeLog        2016-08-06 01:19:14 UTC (rev 204212)
</span><span class="lines">@@ -1,3 +1,32 @@
</span><ins>+2016-08-03  Ryan Haddad  &lt;ryanhaddad@apple.com&gt;
+
+        Test gardening for rdar://problem/27595142.
+
+        * TestExpectations:
+        * platform/ios-simulator-wk1/TestExpectations:
+        * platform/ios-simulator-wk2/TestExpectations:
+        * platform/ios-simulator/TestExpectations:
+        * platform/mac/TestExpectations:
+        * platform/mac/accessibility/roles-exposed-expected.txt:
+        * platform/mac/imported/w3c/web-platform-tests/dom/nodes/ParentNode-querySelector-All-expected.txt: Added.
+        * platform/mac/imported/w3c/web-platform-tests/dom/nodes/ParentNode-querySelector-All-xht-expected.txt: Added.
+        * platform/mac/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt: Added.
+        * platform/mac/imported/w3c/web-platform-tests/html/dom/reflection-forms-expected.txt: Added.
+        * platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-badInput-expected.txt: Added.
+        * platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate-expected.txt: Added.
+        * platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/textfieldselection/selection-not-application-expected.txt: Added.
+        * platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/selection-expected.txt: Added.
+        * platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/type-change-state-expected.txt: Added.
+        * platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/valueMode-expected.txt: Added.
+        * platform/mac/imported/w3c/web-platform-tests/html/semantics/interfaces-expected.txt: Added.
+        * platform/mac/imported/w3c/web-platform-tests/html/semantics/selectors/pseudo-classes/readwrite-readonly-expected.txt: Added.
+        * platform/mac/js/dom/constructor-length-expected.txt:
+        * platform/mac/js/dom/dom-static-property-for-in-iteration-expected.txt: Added.
+        * platform/mac/js/dom/global-constructors-attributes-dedicated-worker-expected.txt: Added.
+        * platform/mac/js/dom/global-constructors-attributes-expected.txt:
+        * platform/mac/platform/mac/fast/loader/file-url-mimetypes-3-expected.txt: Added.
+        * platform/mac/svg/css/getComputedStyle-basic-expected.txt: Added.
+
</ins><span class="cx"> 2016-08-05  Babak Shafiei  &lt;bshafiei@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Rollout r204169. rdar://problem/27592694
</span></span></pre></div>
<a id="branchessafari602branchLayoutTestsTestExpectations"></a>
<div class="modfile"><h4>Modified: branches/safari-602-branch/LayoutTests/TestExpectations (204211 => 204212)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-602-branch/LayoutTests/TestExpectations        2016-08-06 01:16:43 UTC (rev 204211)
+++ branches/safari-602-branch/LayoutTests/TestExpectations        2016-08-06 01:19:14 UTC (rev 204212)
</span><span class="lines">@@ -787,7 +787,6 @@
</span><span class="cx"> webkit.org/b/148922 svg/as-object/svg-in-object-dynamic-attribute-change.html [ Pass ImageOnlyFailure ]
</span><span class="cx"> webkit.org/b/148925 svg/dom/svg-root-lengths.html [ Pass Failure ]
</span><span class="cx"> 
</span><del>-webkit.org/b/150225 fast/custom-elements [ Failure ]
</del><span class="cx"> webkit.org/b/148695 fast/shadow-dom [ Failure ImageOnlyFailure Timeout ]
</span><span class="cx"> 
</span><span class="cx"> # Known failures on CSS Variables Test Suite
</span><span class="lines">@@ -835,9 +834,6 @@
</span><span class="cx"> 
</span><span class="cx"> webkit.org/b/150598 fast/repaint/table-hover-on-link.html [ Pass Failure ]
</span><span class="cx"> 
</span><del>-webkit.org/b/151949 streams/reference-implementation/pipe-to.html [ Failure ]
-webkit.org/b/154687 streams/pipe-to.html [ Slow ]
-
</del><span class="cx"> webkit.org/b/52185 fast/css/vertical-align-baseline-rowspan-010.html [ ImageOnlyFailure ]
</span><span class="cx"> 
</span><span class="cx"> webkit.org/b/155634 http/tests/security/shape-image-cors-redirect-error-message-logging-1.html [ Pass Failure ]
</span><span class="lines">@@ -1061,3 +1057,98 @@
</span><span class="cx"> webkit.org/b/159755 fast/text/emoji-gender-fe0f-9.html [ ImageOnlyFailure ]
</span><span class="cx"> webkit.org/b/159755 fast/text/emoji-gender.html [ ImageOnlyFailure ]
</span><span class="cx"> 
</span><ins>+# Mediastream
+fast/mediastream
+http/tests/media/media-stream
+http/tests/media/media-stream/disconnected-frame-already.html
+webaudio/createMediaStreamSource-null.html
+webaudio/mediastreamaudiodestinationnode.html
+
+# Selectors
+fast/selectors/case-insensitive-attribute-register-requirement-2.html
+fast/selectors/element-closest-descendant-combinator-doubled-child-syntax.html
+fast/selectors/element-matches-attribute-ascii-case-insensitive-html.html
+fast/selectors/element-matches-descendant-combinator-doubled-child-syntax.html
+fast/selectors/nth-child-matching-first.html
+fast/selectors/nth-last-child-matching-first.html
+fast/selectors/querySelector-attribute-ascii-case-insensitive-html.html
+fast/selectors/querySelector-descendant-combinator-doubled-child-syntax.html
+fast/selectors/read-only-read-write-input-basics.html
+imported/w3c/web-platform-tests/html/semantics/selectors
+fast/css/ancestor-of-hovered-element-removed.html
+fast/css/auto-min-size.html
+fast/css/css-selector-text.html
+fast/css/css-set-selector-text.html
+fast/css/currentColor-value-style-update.html
+fast/css/descendant-combinator-doubled-child-syntax-styling.html
+fast/css/getComputedStyle/computed-style-without-renderer.html
+fast/css/getComputedStyle/computed-style.html
+fast/css/parsing-css-attribute-case-insensitive-value-1.html
+fast/css/parsing-css-attribute-case-insensitive-value-4.html
+fast/css/parsing-css-descendant-combinator-doubled-child-syntax.html
+fast/css/read-only-read-write-input-basics.html
+imported/w3c/web-platform-tests/dom/nodes/Element-matches.html
+imported/w3c/web-platform-tests/dom/nodes/ParentNode-querySelector-All-xht.xht
+imported/w3c/web-platform-tests/dom/nodes/ParentNode-querySelector-All.html
+
+# Streams
+streams
+imported/w3c/web-platform-tests/streams
+
+# Grid Layout
+fast/css-grid-layout
+fast/events/key-events-in-editable-gridbox.html
+fast/repaint/align-items-overflow-change.html
+fast/repaint/align-self-change.html
+fast/repaint/align-self-overflow-change.html
+fast/repaint/justify-items-change.html
+fast/repaint/justify-items-overflow-change.html
+fast/repaint/justify-self-change.html
+fast/repaint/justify-self-overflow-change.html
+ietestcenter/css3/grid/grid-column-001.htm
+ietestcenter/css3/grid/grid-column-003.htm
+ietestcenter/css3/grid/grid-items-002.htm
+ietestcenter/css3/grid/grid-items-003.htm
+
+# Fetch
+imported/w3c/web-platform-tests/fetch/api
+
+# Web Animations
+animations/trigger-computed-style.html
+animations/trigger-container-scroll-boundaries.html
+animations/trigger-container-scroll-empty.html
+animations/trigger-container-scroll-simple.html
+animations/trigger-parsing.html
+
+# WebGL2
+fast/canvas/webgl/webgl2-runtime-flag.html
+webgl/webgl2-rendering-context-defined.html
+webgl/webgl2-rendering-context-obtain.html
+webgl/webgl-vertex-array-object-defined.html
+
+# Custom Elements
+fast/custom-elements
+
+# IndieUI
+indieui/uiactions.html
+
+# Input type color
+accessibility/color-well.html
+fast/css/pseudo-visited-background-color-on-input.html
+fast/forms/color/color-setrangetext.html
+fast/forms/color/input-appearance-color.html
+fast/forms/color/input-color-onchange-event.html
+fast/forms/color/input-value-sanitization-color.html
+imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/color.html
+
+# Navigator
+fast/dom/navigator-detached-no-crash.html
+fast/dom/navigator-hardwareConcurrency.html
+fast/workers/worker-navigator.html
+imported/blink/fast/cpu/hardware-concurrency.html
+
+# Will Reveal Edge Events
+fast/events/will-reveal-edge-on-div.html
+fast/events/will-reveal-edges-body-attributes.html
+fast/events/will-reveal-edges-event-listeners.html
+fast/events/will-reveal-edges-window-attributes.html
</ins></span></pre></div>
<a id="branchessafari602branchLayoutTestsplatformiossimulatorTestExpectations"></a>
<div class="modfile"><h4>Modified: branches/safari-602-branch/LayoutTests/platform/ios-simulator/TestExpectations (204211 => 204212)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-602-branch/LayoutTests/platform/ios-simulator/TestExpectations        2016-08-06 01:16:43 UTC (rev 204211)
+++ branches/safari-602-branch/LayoutTests/platform/ios-simulator/TestExpectations        2016-08-06 01:19:14 UTC (rev 204212)
</span><span class="lines">@@ -279,8 +279,6 @@
</span><span class="cx"> webkit.org/b/116046 fast/events/sequential-focus-navigation-starting-point.html [ Skip ]
</span><span class="cx"> webkit.org/b/159240 fast/events/remove-focus-navigation-starting-point-crash.html [ Skip ]
</span><span class="cx"> 
</span><del>-webkit.org/b/150225 fast/custom-elements [ Pass ]
-
</del><span class="cx"> # This test needs to be rewritten to use runUIScript to work on iOS
</span><span class="cx"> webkit.org/b/152993 http/tests/contentdispositionattachmentsandbox/form-submission-disabled.html [ Skip ]
</span><span class="cx"> 
</span></span></pre></div>
<a id="branchessafari602branchLayoutTestsplatformiossimulatorwk1TestExpectations"></a>
<div class="modfile"><h4>Modified: branches/safari-602-branch/LayoutTests/platform/ios-simulator-wk1/TestExpectations (204211 => 204212)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-602-branch/LayoutTests/platform/ios-simulator-wk1/TestExpectations        2016-08-06 01:16:43 UTC (rev 204211)
+++ branches/safari-602-branch/LayoutTests/platform/ios-simulator-wk1/TestExpectations        2016-08-06 01:19:14 UTC (rev 204212)
</span><span class="lines">@@ -1310,9 +1310,6 @@
</span><span class="cx"> compositing/repaint/content-into-overflow.html [ Skip ]
</span><span class="cx"> compositing/rtl/rtl-absolute.html [ Skip ]
</span><span class="cx"> compositing/video/video-controls-layer-creation.html [ Skip ]
</span><del>-fast/css-grid-layout/flex-content-sized-columns-resize.html [ Skip ]
-fast/css-grid-layout/flex-factor-sum-less-than-1.html [ Skip ]
-fast/css-grid-layout/float-not-protruding-into-next-grid-item.html [ Skip ]
</del><span class="cx"> http/tests/contentfiltering/load-substitute-data-from-appcache.html [ Skip ]
</span><span class="cx"> http/tests/contentfiltering/modify-redirect-request-url.html [ Skip ]
</span><span class="cx"> http/tests/incremental/slow-utf8-css.html [ Skip ]
</span><span class="lines">@@ -1342,7 +1339,6 @@
</span><span class="cx"> imported/blink/fast/masking/mask-serializing.html [ Crash Pass ]
</span><span class="cx"> imported/blink/fast/multicol/newmulticol/multicol-becomes-regular-block.html [ Crash Pass ]
</span><span class="cx"> imported/blink/editing/undo/crash-redo-with-iframes.html [ Failure Pass ]
</span><del>-imported/blink/fast/css-grid-layout/stale-grid-layout-2.html [ Failure Pass ]
</del><span class="cx"> imported/blink/svg/filters/feColorMatrix-setAttribute-crash1.html [ Pass Failure ]
</span><span class="cx"> 
</span><span class="cx"> webkit.org/b/155495 compositing/visible-rect/animated-from-none.html [ Failure ]
</span></span></pre></div>
<a id="branchessafari602branchLayoutTestsplatformiossimulatorwk2TestExpectations"></a>
<div class="modfile"><h4>Modified: branches/safari-602-branch/LayoutTests/platform/ios-simulator-wk2/TestExpectations (204211 => 204212)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-602-branch/LayoutTests/platform/ios-simulator-wk2/TestExpectations        2016-08-06 01:16:43 UTC (rev 204211)
+++ branches/safari-602-branch/LayoutTests/platform/ios-simulator-wk2/TestExpectations        2016-08-06 01:19:14 UTC (rev 204212)
</span><span class="lines">@@ -1772,7 +1772,6 @@
</span><span class="cx"> transitions/zero-duration-with-non-zero-delay-end.html [ Failure Pass ]
</span><span class="cx"> 
</span><span class="cx"> # Skip flaky/timeout tests
</span><del>-fast/css-grid-layout/flex-content-sized-columns-resize.html [ Skip ]
</del><span class="cx"> fast/history/page-cache-geolocation-active-oneshot.html [ Skip ]
</span><span class="cx"> 
</span><span class="cx"> compositing/layer-creation/fixed-position-out-of-view-scaled-scroll.html [ Failure ]
</span><span class="lines">@@ -1911,4 +1910,4 @@
</span><span class="cx"> 
</span><span class="cx"> webkit.org/b/159724 [ Release ] imported/w3c/web-platform-tests/XMLHttpRequest/send-redirect-post-upload.htm [ Failure ]
</span><span class="cx"> 
</span><del>-webkit.org/b/159840 [ Release ] http/tests/cache/disk-cache/disk-cache-request-max-stale.html [ Pass Timeout ]
</del><span class="cx">\ No newline at end of file
</span><ins>+webkit.org/b/159840 [ Release ] http/tests/cache/disk-cache/disk-cache-request-max-stale.html [ Pass Timeout ]
</ins></span></pre></div>
<a id="branchessafari602branchLayoutTestsplatformmacTestExpectations"></a>
<div class="modfile"><h4>Modified: branches/safari-602-branch/LayoutTests/platform/mac/TestExpectations (204211 => 204212)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-602-branch/LayoutTests/platform/mac/TestExpectations        2016-08-06 01:16:43 UTC (rev 204211)
+++ branches/safari-602-branch/LayoutTests/platform/mac/TestExpectations        2016-08-06 01:19:14 UTC (rev 204212)
</span><span class="lines">@@ -1244,8 +1244,6 @@
</span><span class="cx"> # Touch events is not enabled on Mac
</span><span class="cx"> webkit.org/b/149592 fast/shadow-dom/touch-event-ios.html [ Failure ]
</span><span class="cx"> 
</span><del>-webkit.org/b/150225 fast/custom-elements [ Pass ]
-
</del><span class="cx"> # Times out in debug.
</span><span class="cx"> [ Debug ] js/regress/getter-richards-try-catch.html [ Skip ]
</span><span class="cx"> 
</span></span></pre></div>
<a id="branchessafari602branchLayoutTestsplatformmacaccessibilityrolesexposedexpectedtxt"></a>
<div class="modfile"><h4>Modified: branches/safari-602-branch/LayoutTests/platform/mac/accessibility/roles-exposed-expected.txt (204211 => 204212)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-602-branch/LayoutTests/platform/mac/accessibility/roles-exposed-expected.txt        2016-08-06 01:16:43 UTC (rev 204211)
+++ branches/safari-602-branch/LayoutTests/platform/mac/accessibility/roles-exposed-expected.txt        2016-08-06 01:19:14 UTC (rev 204212)
</span><span class="lines">@@ -225,9 +225,9 @@
</span><span class="cx">       AXRoleDescription: button
</span><span class="cx">       
</span><span class="cx"> input[type='color']
</span><del>-      AXRole: AXColorWell
</del><ins>+      AXRole: AXTextField
</ins><span class="cx">       AXSubrole: 
</span><del>-      AXRoleDescription: color well
</del><ins>+      AXRoleDescription: text field
</ins><span class="cx">       
</span><span class="cx"> input[type='checkbox']
</span><span class="cx">       AXRole: AXCheckBox
</span></span></pre></div>
<a id="branchessafari602branchLayoutTestsplatformmacimportedw3cwebplatformtestsdomnodesParentNodequerySelectorAllexpectedtxt"></a>
<div class="addfile"><h4>Added: branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/dom/nodes/ParentNode-querySelector-All-expected.txt (0 => 204212)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/dom/nodes/ParentNode-querySelector-All-expected.txt                                (rev 0)
+++ branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/dom/nodes/ParentNode-querySelector-All-expected.txt        2016-08-06 01:19:14 UTC (rev 204212)
</span><span class="lines">@@ -0,0 +1,2006 @@
</span><ins>+This test requires JavaScript.
+
+PASS Selectors-API Test Suite: HTML 
+PASS Document supports querySelector 
+PASS Document supports querySelectorAll 
+PASS Document.querySelectorAll returns NodeList instance 
+PASS Detached Element supports querySelector 
+PASS Detached Element supports querySelectorAll 
+PASS Detached Element.querySelectorAll returns NodeList instance 
+PASS Fragment supports querySelector 
+PASS Fragment supports querySelectorAll 
+PASS Fragment.querySelectorAll returns NodeList instance 
+PASS In-document Element supports querySelector 
+PASS In-document Element supports querySelectorAll 
+PASS In-document Element.querySelectorAll returns NodeList instance 
+PASS Document.querySelectorAll null 
+PASS Document.querySelectorAll undefined 
+PASS Document.querySelectorAll no parameter 
+PASS Document.querySelector null 
+PASS Document.querySelector undefined 
+PASS Document.querySelector no parameter 
+PASS Document.querySelectorAll tree order 
+PASS Detached Element.querySelectorAll null 
+PASS Detached Element.querySelectorAll undefined 
+PASS Detached Element.querySelectorAll no parameter 
+PASS Detached Element.querySelector null 
+PASS Detached Element.querySelector undefined 
+PASS Detached Element.querySelector no parameter 
+PASS Detached Element.querySelectorAll tree order 
+PASS Fragment.querySelectorAll null 
+PASS Fragment.querySelectorAll undefined 
+PASS Fragment.querySelectorAll no parameter 
+PASS Fragment.querySelector null 
+PASS Fragment.querySelector undefined 
+PASS Fragment.querySelector no parameter 
+PASS Fragment.querySelectorAll tree order 
+PASS In-document Element.querySelectorAll null 
+PASS In-document Element.querySelectorAll undefined 
+PASS In-document Element.querySelectorAll no parameter 
+PASS In-document Element.querySelector null 
+PASS In-document Element.querySelector undefined 
+PASS In-document Element.querySelector no parameter 
+PASS In-document Element.querySelectorAll tree order 
+PASS Document: static NodeList 
+PASS Document: new NodeList 
+PASS Detached Element: static NodeList 
+PASS Detached Element: new NodeList 
+PASS Fragment: static NodeList 
+PASS Fragment: new NodeList 
+PASS In-document Element: static NodeList 
+PASS In-document Element: new NodeList 
+PASS Document.querySelector: Empty String:  
+PASS Document.querySelectorAll: Empty String:  
+PASS Document.querySelector: Invalid character: [ 
+PASS Document.querySelectorAll: Invalid character: [ 
+PASS Document.querySelector: Invalid character: ] 
+PASS Document.querySelectorAll: Invalid character: ] 
+PASS Document.querySelector: Invalid character: ( 
+PASS Document.querySelectorAll: Invalid character: ( 
+PASS Document.querySelector: Invalid character: ) 
+PASS Document.querySelectorAll: Invalid character: ) 
+PASS Document.querySelector: Invalid character: { 
+PASS Document.querySelectorAll: Invalid character: { 
+PASS Document.querySelector: Invalid character: } 
+PASS Document.querySelectorAll: Invalid character: } 
+PASS Document.querySelector: Invalid character: &lt; 
+PASS Document.querySelectorAll: Invalid character: &lt; 
+PASS Document.querySelector: Invalid character: &gt; 
+PASS Document.querySelectorAll: Invalid character: &gt; 
+PASS Document.querySelector: Invalid ID: # 
+PASS Document.querySelectorAll: Invalid ID: # 
+PASS Document.querySelector: Invalid group of selectors: div, 
+PASS Document.querySelectorAll: Invalid group of selectors: div, 
+PASS Document.querySelector: Invalid class: . 
+PASS Document.querySelectorAll: Invalid class: . 
+PASS Document.querySelector: Invalid class: .5cm 
+PASS Document.querySelectorAll: Invalid class: .5cm 
+PASS Document.querySelector: Invalid class: ..test 
+PASS Document.querySelectorAll: Invalid class: ..test 
+PASS Document.querySelector: Invalid class: .foo..quux 
+PASS Document.querySelectorAll: Invalid class: .foo..quux 
+PASS Document.querySelector: Invalid class: .bar. 
+PASS Document.querySelectorAll: Invalid class: .bar. 
+PASS Document.querySelector: Invalid combinator: div &amp; address, p 
+PASS Document.querySelectorAll: Invalid combinator: div &amp; address, p 
+PASS Document.querySelector: Invalid combinator: div &gt;&gt; address, p 
+PASS Document.querySelectorAll: Invalid combinator: div &gt;&gt; address, p 
+PASS Document.querySelector: Invalid combinator: div ++ address, p 
+PASS Document.querySelectorAll: Invalid combinator: div ++ address, p 
+PASS Document.querySelector: Invalid combinator: div ~~ address, p 
+PASS Document.querySelectorAll: Invalid combinator: div ~~ address, p 
+PASS Document.querySelector: Invalid [att=value] selector: [*=test] 
+PASS Document.querySelectorAll: Invalid [att=value] selector: [*=test] 
+PASS Document.querySelector: Invalid [att=value] selector: [*|*=test] 
+PASS Document.querySelectorAll: Invalid [att=value] selector: [*|*=test] 
+PASS Document.querySelector: Invalid [att=value] selector: [class= space unquoted ] 
+PASS Document.querySelectorAll: Invalid [att=value] selector: [class= space unquoted ] 
+PASS Document.querySelector: Unknown pseudo-class: div:example 
+PASS Document.querySelectorAll: Unknown pseudo-class: div:example 
+PASS Document.querySelector: Unknown pseudo-class: :example 
+PASS Document.querySelectorAll: Unknown pseudo-class: :example 
+PASS Document.querySelector: Unknown pseudo-element: div::example 
+PASS Document.querySelectorAll: Unknown pseudo-element: div::example 
+PASS Document.querySelector: Unknown pseudo-element: ::example 
+PASS Document.querySelectorAll: Unknown pseudo-element: ::example 
+PASS Document.querySelector: Invalid pseudo-element: :::before 
+PASS Document.querySelectorAll: Invalid pseudo-element: :::before 
+FAIL Document.querySelector: Undeclared namespace: ns|div assert_throws: function &quot;function () {
+        root.querySelector(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+FAIL Document.querySelectorAll: Undeclared namespace: ns|div assert_throws: function &quot;function () {
+        root.querySelectorAll(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+FAIL Document.querySelector: Undeclared namespace: :not(ns|div) assert_throws: function &quot;function () {
+        root.querySelector(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+FAIL Document.querySelectorAll: Undeclared namespace: :not(ns|div) assert_throws: function &quot;function () {
+        root.querySelectorAll(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+PASS Document.querySelector: Invalid namespace: ^|div 
+PASS Document.querySelectorAll: Invalid namespace: ^|div 
+PASS Document.querySelector: Invalid namespace: $|div 
+PASS Document.querySelectorAll: Invalid namespace: $|div 
+PASS Detached Element.querySelector: Empty String:  
+PASS Detached Element.querySelectorAll: Empty String:  
+PASS Detached Element.querySelector: Invalid character: [ 
+PASS Detached Element.querySelectorAll: Invalid character: [ 
+PASS Detached Element.querySelector: Invalid character: ] 
+PASS Detached Element.querySelectorAll: Invalid character: ] 
+PASS Detached Element.querySelector: Invalid character: ( 
+PASS Detached Element.querySelectorAll: Invalid character: ( 
+PASS Detached Element.querySelector: Invalid character: ) 
+PASS Detached Element.querySelectorAll: Invalid character: ) 
+PASS Detached Element.querySelector: Invalid character: { 
+PASS Detached Element.querySelectorAll: Invalid character: { 
+PASS Detached Element.querySelector: Invalid character: } 
+PASS Detached Element.querySelectorAll: Invalid character: } 
+PASS Detached Element.querySelector: Invalid character: &lt; 
+PASS Detached Element.querySelectorAll: Invalid character: &lt; 
+PASS Detached Element.querySelector: Invalid character: &gt; 
+PASS Detached Element.querySelectorAll: Invalid character: &gt; 
+PASS Detached Element.querySelector: Invalid ID: # 
+PASS Detached Element.querySelectorAll: Invalid ID: # 
+PASS Detached Element.querySelector: Invalid group of selectors: div, 
+PASS Detached Element.querySelectorAll: Invalid group of selectors: div, 
+PASS Detached Element.querySelector: Invalid class: . 
+PASS Detached Element.querySelectorAll: Invalid class: . 
+PASS Detached Element.querySelector: Invalid class: .5cm 
+PASS Detached Element.querySelectorAll: Invalid class: .5cm 
+PASS Detached Element.querySelector: Invalid class: ..test 
+PASS Detached Element.querySelectorAll: Invalid class: ..test 
+PASS Detached Element.querySelector: Invalid class: .foo..quux 
+PASS Detached Element.querySelectorAll: Invalid class: .foo..quux 
+PASS Detached Element.querySelector: Invalid class: .bar. 
+PASS Detached Element.querySelectorAll: Invalid class: .bar. 
+PASS Detached Element.querySelector: Invalid combinator: div &amp; address, p 
+PASS Detached Element.querySelectorAll: Invalid combinator: div &amp; address, p 
+PASS Detached Element.querySelector: Invalid combinator: div &gt;&gt; address, p 
+PASS Detached Element.querySelectorAll: Invalid combinator: div &gt;&gt; address, p 
+PASS Detached Element.querySelector: Invalid combinator: div ++ address, p 
+PASS Detached Element.querySelectorAll: Invalid combinator: div ++ address, p 
+PASS Detached Element.querySelector: Invalid combinator: div ~~ address, p 
+PASS Detached Element.querySelectorAll: Invalid combinator: div ~~ address, p 
+PASS Detached Element.querySelector: Invalid [att=value] selector: [*=test] 
+PASS Detached Element.querySelectorAll: Invalid [att=value] selector: [*=test] 
+PASS Detached Element.querySelector: Invalid [att=value] selector: [*|*=test] 
+PASS Detached Element.querySelectorAll: Invalid [att=value] selector: [*|*=test] 
+PASS Detached Element.querySelector: Invalid [att=value] selector: [class= space unquoted ] 
+PASS Detached Element.querySelectorAll: Invalid [att=value] selector: [class= space unquoted ] 
+PASS Detached Element.querySelector: Unknown pseudo-class: div:example 
+PASS Detached Element.querySelectorAll: Unknown pseudo-class: div:example 
+PASS Detached Element.querySelector: Unknown pseudo-class: :example 
+PASS Detached Element.querySelectorAll: Unknown pseudo-class: :example 
+PASS Detached Element.querySelector: Unknown pseudo-element: div::example 
+PASS Detached Element.querySelectorAll: Unknown pseudo-element: div::example 
+PASS Detached Element.querySelector: Unknown pseudo-element: ::example 
+PASS Detached Element.querySelectorAll: Unknown pseudo-element: ::example 
+PASS Detached Element.querySelector: Invalid pseudo-element: :::before 
+PASS Detached Element.querySelectorAll: Invalid pseudo-element: :::before 
+FAIL Detached Element.querySelector: Undeclared namespace: ns|div assert_throws: function &quot;function () {
+        root.querySelector(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+FAIL Detached Element.querySelectorAll: Undeclared namespace: ns|div assert_throws: function &quot;function () {
+        root.querySelectorAll(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+FAIL Detached Element.querySelector: Undeclared namespace: :not(ns|div) assert_throws: function &quot;function () {
+        root.querySelector(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+FAIL Detached Element.querySelectorAll: Undeclared namespace: :not(ns|div) assert_throws: function &quot;function () {
+        root.querySelectorAll(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+PASS Detached Element.querySelector: Invalid namespace: ^|div 
+PASS Detached Element.querySelectorAll: Invalid namespace: ^|div 
+PASS Detached Element.querySelector: Invalid namespace: $|div 
+PASS Detached Element.querySelectorAll: Invalid namespace: $|div 
+PASS Fragment.querySelector: Empty String:  
+PASS Fragment.querySelectorAll: Empty String:  
+PASS Fragment.querySelector: Invalid character: [ 
+PASS Fragment.querySelectorAll: Invalid character: [ 
+PASS Fragment.querySelector: Invalid character: ] 
+PASS Fragment.querySelectorAll: Invalid character: ] 
+PASS Fragment.querySelector: Invalid character: ( 
+PASS Fragment.querySelectorAll: Invalid character: ( 
+PASS Fragment.querySelector: Invalid character: ) 
+PASS Fragment.querySelectorAll: Invalid character: ) 
+PASS Fragment.querySelector: Invalid character: { 
+PASS Fragment.querySelectorAll: Invalid character: { 
+PASS Fragment.querySelector: Invalid character: } 
+PASS Fragment.querySelectorAll: Invalid character: } 
+PASS Fragment.querySelector: Invalid character: &lt; 
+PASS Fragment.querySelectorAll: Invalid character: &lt; 
+PASS Fragment.querySelector: Invalid character: &gt; 
+PASS Fragment.querySelectorAll: Invalid character: &gt; 
+PASS Fragment.querySelector: Invalid ID: # 
+PASS Fragment.querySelectorAll: Invalid ID: # 
+PASS Fragment.querySelector: Invalid group of selectors: div, 
+PASS Fragment.querySelectorAll: Invalid group of selectors: div, 
+PASS Fragment.querySelector: Invalid class: . 
+PASS Fragment.querySelectorAll: Invalid class: . 
+PASS Fragment.querySelector: Invalid class: .5cm 
+PASS Fragment.querySelectorAll: Invalid class: .5cm 
+PASS Fragment.querySelector: Invalid class: ..test 
+PASS Fragment.querySelectorAll: Invalid class: ..test 
+PASS Fragment.querySelector: Invalid class: .foo..quux 
+PASS Fragment.querySelectorAll: Invalid class: .foo..quux 
+PASS Fragment.querySelector: Invalid class: .bar. 
+PASS Fragment.querySelectorAll: Invalid class: .bar. 
+PASS Fragment.querySelector: Invalid combinator: div &amp; address, p 
+PASS Fragment.querySelectorAll: Invalid combinator: div &amp; address, p 
+PASS Fragment.querySelector: Invalid combinator: div &gt;&gt; address, p 
+PASS Fragment.querySelectorAll: Invalid combinator: div &gt;&gt; address, p 
+PASS Fragment.querySelector: Invalid combinator: div ++ address, p 
+PASS Fragment.querySelectorAll: Invalid combinator: div ++ address, p 
+PASS Fragment.querySelector: Invalid combinator: div ~~ address, p 
+PASS Fragment.querySelectorAll: Invalid combinator: div ~~ address, p 
+PASS Fragment.querySelector: Invalid [att=value] selector: [*=test] 
+PASS Fragment.querySelectorAll: Invalid [att=value] selector: [*=test] 
+PASS Fragment.querySelector: Invalid [att=value] selector: [*|*=test] 
+PASS Fragment.querySelectorAll: Invalid [att=value] selector: [*|*=test] 
+PASS Fragment.querySelector: Invalid [att=value] selector: [class= space unquoted ] 
+PASS Fragment.querySelectorAll: Invalid [att=value] selector: [class= space unquoted ] 
+PASS Fragment.querySelector: Unknown pseudo-class: div:example 
+PASS Fragment.querySelectorAll: Unknown pseudo-class: div:example 
+PASS Fragment.querySelector: Unknown pseudo-class: :example 
+PASS Fragment.querySelectorAll: Unknown pseudo-class: :example 
+PASS Fragment.querySelector: Unknown pseudo-element: div::example 
+PASS Fragment.querySelectorAll: Unknown pseudo-element: div::example 
+PASS Fragment.querySelector: Unknown pseudo-element: ::example 
+PASS Fragment.querySelectorAll: Unknown pseudo-element: ::example 
+PASS Fragment.querySelector: Invalid pseudo-element: :::before 
+PASS Fragment.querySelectorAll: Invalid pseudo-element: :::before 
+FAIL Fragment.querySelector: Undeclared namespace: ns|div assert_throws: function &quot;function () {
+        root.querySelector(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+FAIL Fragment.querySelectorAll: Undeclared namespace: ns|div assert_throws: function &quot;function () {
+        root.querySelectorAll(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+FAIL Fragment.querySelector: Undeclared namespace: :not(ns|div) assert_throws: function &quot;function () {
+        root.querySelector(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+FAIL Fragment.querySelectorAll: Undeclared namespace: :not(ns|div) assert_throws: function &quot;function () {
+        root.querySelectorAll(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+PASS Fragment.querySelector: Invalid namespace: ^|div 
+PASS Fragment.querySelectorAll: Invalid namespace: ^|div 
+PASS Fragment.querySelector: Invalid namespace: $|div 
+PASS Fragment.querySelectorAll: Invalid namespace: $|div 
+PASS In-document Element.querySelector: Empty String:  
+PASS In-document Element.querySelectorAll: Empty String:  
+PASS In-document Element.querySelector: Invalid character: [ 
+PASS In-document Element.querySelectorAll: Invalid character: [ 
+PASS In-document Element.querySelector: Invalid character: ] 
+PASS In-document Element.querySelectorAll: Invalid character: ] 
+PASS In-document Element.querySelector: Invalid character: ( 
+PASS In-document Element.querySelectorAll: Invalid character: ( 
+PASS In-document Element.querySelector: Invalid character: ) 
+PASS In-document Element.querySelectorAll: Invalid character: ) 
+PASS In-document Element.querySelector: Invalid character: { 
+PASS In-document Element.querySelectorAll: Invalid character: { 
+PASS In-document Element.querySelector: Invalid character: } 
+PASS In-document Element.querySelectorAll: Invalid character: } 
+PASS In-document Element.querySelector: Invalid character: &lt; 
+PASS In-document Element.querySelectorAll: Invalid character: &lt; 
+PASS In-document Element.querySelector: Invalid character: &gt; 
+PASS In-document Element.querySelectorAll: Invalid character: &gt; 
+PASS In-document Element.querySelector: Invalid ID: # 
+PASS In-document Element.querySelectorAll: Invalid ID: # 
+PASS In-document Element.querySelector: Invalid group of selectors: div, 
+PASS In-document Element.querySelectorAll: Invalid group of selectors: div, 
+PASS In-document Element.querySelector: Invalid class: . 
+PASS In-document Element.querySelectorAll: Invalid class: . 
+PASS In-document Element.querySelector: Invalid class: .5cm 
+PASS In-document Element.querySelectorAll: Invalid class: .5cm 
+PASS In-document Element.querySelector: Invalid class: ..test 
+PASS In-document Element.querySelectorAll: Invalid class: ..test 
+PASS In-document Element.querySelector: Invalid class: .foo..quux 
+PASS In-document Element.querySelectorAll: Invalid class: .foo..quux 
+PASS In-document Element.querySelector: Invalid class: .bar. 
+PASS In-document Element.querySelectorAll: Invalid class: .bar. 
+PASS In-document Element.querySelector: Invalid combinator: div &amp; address, p 
+PASS In-document Element.querySelectorAll: Invalid combinator: div &amp; address, p 
+PASS In-document Element.querySelector: Invalid combinator: div &gt;&gt; address, p 
+PASS In-document Element.querySelectorAll: Invalid combinator: div &gt;&gt; address, p 
+PASS In-document Element.querySelector: Invalid combinator: div ++ address, p 
+PASS In-document Element.querySelectorAll: Invalid combinator: div ++ address, p 
+PASS In-document Element.querySelector: Invalid combinator: div ~~ address, p 
+PASS In-document Element.querySelectorAll: Invalid combinator: div ~~ address, p 
+PASS In-document Element.querySelector: Invalid [att=value] selector: [*=test] 
+PASS In-document Element.querySelectorAll: Invalid [att=value] selector: [*=test] 
+PASS In-document Element.querySelector: Invalid [att=value] selector: [*|*=test] 
+PASS In-document Element.querySelectorAll: Invalid [att=value] selector: [*|*=test] 
+PASS In-document Element.querySelector: Invalid [att=value] selector: [class= space unquoted ] 
+PASS In-document Element.querySelectorAll: Invalid [att=value] selector: [class= space unquoted ] 
+PASS In-document Element.querySelector: Unknown pseudo-class: div:example 
+PASS In-document Element.querySelectorAll: Unknown pseudo-class: div:example 
+PASS In-document Element.querySelector: Unknown pseudo-class: :example 
+PASS In-document Element.querySelectorAll: Unknown pseudo-class: :example 
+PASS In-document Element.querySelector: Unknown pseudo-element: div::example 
+PASS In-document Element.querySelectorAll: Unknown pseudo-element: div::example 
+PASS In-document Element.querySelector: Unknown pseudo-element: ::example 
+PASS In-document Element.querySelectorAll: Unknown pseudo-element: ::example 
+PASS In-document Element.querySelector: Invalid pseudo-element: :::before 
+PASS In-document Element.querySelectorAll: Invalid pseudo-element: :::before 
+FAIL In-document Element.querySelector: Undeclared namespace: ns|div assert_throws: function &quot;function () {
+        root.querySelector(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+FAIL In-document Element.querySelectorAll: Undeclared namespace: ns|div assert_throws: function &quot;function () {
+        root.querySelectorAll(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+FAIL In-document Element.querySelector: Undeclared namespace: :not(ns|div) assert_throws: function &quot;function () {
+        root.querySelector(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+FAIL In-document Element.querySelectorAll: Undeclared namespace: :not(ns|div) assert_throws: function &quot;function () {
+        root.querySelectorAll(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+PASS In-document Element.querySelector: Invalid namespace: ^|div 
+PASS In-document Element.querySelectorAll: Invalid namespace: ^|div 
+PASS In-document Element.querySelector: Invalid namespace: $|div 
+PASS In-document Element.querySelectorAll: Invalid namespace: $|div 
+PASS Document.querySelectorAll: Type selector, matching html element: html 
+PASS Document.querySelector: Type selector, matching html element: html 
+PASS Document.querySelectorAll: Type selector, matching body element: body 
+PASS Document.querySelector: Type selector, matching body element: body 
+PASS Document.querySelectorAll: Universal selector, matching all children of element with specified ID: #universal&gt;* 
+PASS Document.querySelector: Universal selector, matching all children of element with specified ID: #universal&gt;* 
+PASS Document.querySelectorAll: Universal selector, matching all grandchildren of element with specified ID: #universal&gt;*&gt;* 
+PASS Document.querySelector: Universal selector, matching all grandchildren of element with specified ID: #universal&gt;*&gt;* 
+PASS Document.querySelectorAll: Universal selector, matching all children of empty element with specified ID: #empty&gt;* 
+PASS Document.querySelector: Universal selector, matching all children of empty element with specified ID: #empty&gt;* 
+PASS Document.querySelectorAll: Universal selector, matching all descendants of element with specified ID: #universal * 
+PASS Document.querySelector: Universal selector, matching all descendants of element with specified ID: #universal * 
+PASS Document.querySelectorAll: Attribute presence selector, matching align attribute with value: .attr-presence-div1[align] 
+PASS Document.querySelector: Attribute presence selector, matching align attribute with value: .attr-presence-div1[align] 
+PASS Document.querySelectorAll: Attribute presence selector, matching align attribute with empty value: .attr-presence-div2[align] 
+PASS Document.querySelector: Attribute presence selector, matching align attribute with empty value: .attr-presence-div2[align] 
+PASS Document.querySelectorAll: Attribute presence selector, matching title attribute, case insensitivity: #attr-presence [TiTlE] 
+PASS Document.querySelector: Attribute presence selector, matching title attribute, case insensitivity: #attr-presence [TiTlE] 
+PASS Document.querySelectorAll: Attribute presence selector, matching custom data-* attribute: [data-attr-presence] 
+PASS Document.querySelector: Attribute presence selector, matching custom data-* attribute: [data-attr-presence] 
+PASS Document.querySelectorAll: Attribute presence selector, not matching attribute with similar name: .attr-presence-div3[align], .attr-presence-div4[align] 
+PASS Document.querySelector: Attribute presence selector, not matching attribute with similar name: .attr-presence-div3[align], .attr-presence-div4[align] 
+PASS Document.querySelectorAll: Attribute presence selector, matching attribute with non-ASCII characters: ul[data-中文] 
+PASS Document.querySelector: Attribute presence selector, matching attribute with non-ASCII characters: ul[data-中文] 
+PASS Document.querySelectorAll: Attribute presence selector, not matching default option without selected attribute: #attr-presence-select1 option[selected] 
+PASS Document.querySelector: Attribute presence selector, not matching default option without selected attribute: #attr-presence-select1 option[selected] 
+PASS Document.querySelectorAll: Attribute presence selector, matching option with selected attribute: #attr-presence-select2 option[selected] 
+PASS Document.querySelector: Attribute presence selector, matching option with selected attribute: #attr-presence-select2 option[selected] 
+PASS Document.querySelectorAll: Attribute presence selector, matching multiple options with selected attributes: #attr-presence-select3 option[selected] 
+PASS Document.querySelector: Attribute presence selector, matching multiple options with selected attributes: #attr-presence-select3 option[selected] 
+PASS Document.querySelectorAll: Attribute value selector, matching align attribute with value: #attr-value [align=&quot;center&quot;] 
+PASS Document.querySelector: Attribute value selector, matching align attribute with value: #attr-value [align=&quot;center&quot;] 
+PASS Document.querySelectorAll: Attribute value selector, matching align attribute with empty value: #attr-value [align=&quot;&quot;] 
+PASS Document.querySelector: Attribute value selector, matching align attribute with empty value: #attr-value [align=&quot;&quot;] 
+PASS Document.querySelectorAll: Attribute value selector, not matching align attribute with partial value: #attr-value [align=&quot;c&quot;] 
+PASS Document.querySelector: Attribute value selector, not matching align attribute with partial value: #attr-value [align=&quot;c&quot;] 
+PASS Document.querySelectorAll: Attribute value selector, not matching align attribute with incorrect value: #attr-value [align=&quot;centera&quot;] 
+PASS Document.querySelector: Attribute value selector, not matching align attribute with incorrect value: #attr-value [align=&quot;centera&quot;] 
+PASS Document.querySelectorAll: Attribute value selector, matching custom data-* attribute with unicode escaped value: [data-attr-value=&quot;\e9&quot;] 
+PASS Document.querySelector: Attribute value selector, matching custom data-* attribute with unicode escaped value: [data-attr-value=&quot;\e9&quot;] 
+PASS Document.querySelectorAll: Attribute value selector, matching custom data-* attribute with escaped character: [data-attr-value_foo=&quot;\e9&quot;] 
+PASS Document.querySelector: Attribute value selector, matching custom data-* attribute with escaped character: [data-attr-value_foo=&quot;\e9&quot;] 
+PASS Document.querySelectorAll: Attribute value selector with single-quoted value, matching multiple inputs with type attributes: #attr-value input[type='hidden'],#attr-value input[type='radio'] 
+PASS Document.querySelector: Attribute value selector with single-quoted value, matching multiple inputs with type attributes: #attr-value input[type='hidden'],#attr-value input[type='radio'] 
+PASS Document.querySelectorAll: Attribute value selector with double-quoted value, matching multiple inputs with type attributes: #attr-value input[type=&quot;hidden&quot;],#attr-value input[type='radio'] 
+PASS Document.querySelector: Attribute value selector with double-quoted value, matching multiple inputs with type attributes: #attr-value input[type=&quot;hidden&quot;],#attr-value input[type='radio'] 
+PASS Document.querySelectorAll: Attribute value selector with unquoted value, matching multiple inputs with type attributes: #attr-value input[type=hidden],#attr-value input[type=radio] 
+PASS Document.querySelector: Attribute value selector with unquoted value, matching multiple inputs with type attributes: #attr-value input[type=hidden],#attr-value input[type=radio] 
+PASS Document.querySelectorAll: Attribute value selector, matching attribute with value using non-ASCII characters: [data-attr-value=中文] 
+PASS Document.querySelector: Attribute value selector, matching attribute with value using non-ASCII characters: [data-attr-value=中文] 
+PASS Document.querySelectorAll: Attribute whitespace-separated list selector, matching class attribute with value: #attr-whitespace [class~=&quot;div1&quot;] 
+PASS Document.querySelector: Attribute whitespace-separated list selector, matching class attribute with value: #attr-whitespace [class~=&quot;div1&quot;] 
+PASS Document.querySelectorAll: Attribute whitespace-separated list selector, not matching class attribute with empty value: #attr-whitespace [class~=&quot;&quot;] 
+PASS Document.querySelector: Attribute whitespace-separated list selector, not matching class attribute with empty value: #attr-whitespace [class~=&quot;&quot;] 
+PASS Document.querySelectorAll: Attribute whitespace-separated list selector, not matching class attribute with partial value: [data-attr-whitespace~=&quot;div&quot;] 
+PASS Document.querySelector: Attribute whitespace-separated list selector, not matching class attribute with partial value: [data-attr-whitespace~=&quot;div&quot;] 
+PASS Document.querySelectorAll: Attribute whitespace-separated list selector, matching custom data-* attribute with unicode escaped value: [data-attr-whitespace~=&quot;\0000e9&quot;] 
+PASS Document.querySelector: Attribute whitespace-separated list selector, matching custom data-* attribute with unicode escaped value: [data-attr-whitespace~=&quot;\0000e9&quot;] 
+PASS Document.querySelectorAll: Attribute whitespace-separated list selector, matching custom data-* attribute with escaped character: [data-attr-whitespace_foo~=&quot;\e9&quot;] 
+PASS Document.querySelector: Attribute whitespace-separated list selector, matching custom data-* attribute with escaped character: [data-attr-whitespace_foo~=&quot;\e9&quot;] 
+PASS Document.querySelectorAll: Attribute whitespace-separated list selector with single-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~='bookmark'],  #attr-whitespace a[rel~='nofollow'] 
+PASS Document.querySelector: Attribute whitespace-separated list selector with single-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~='bookmark'],  #attr-whitespace a[rel~='nofollow'] 
+PASS Document.querySelectorAll: Attribute whitespace-separated list selector with double-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=&quot;bookmark&quot;],#attr-whitespace a[rel~='nofollow'] 
+PASS Document.querySelector: Attribute whitespace-separated list selector with double-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=&quot;bookmark&quot;],#attr-whitespace a[rel~='nofollow'] 
+PASS Document.querySelectorAll: Attribute whitespace-separated list selector with unquoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=bookmark],    #attr-whitespace a[rel~=nofollow] 
+PASS Document.querySelector: Attribute whitespace-separated list selector with unquoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=bookmark],    #attr-whitespace a[rel~=nofollow] 
+PASS Document.querySelectorAll: Attribute whitespace-separated list selector with double-quoted value, not matching value with space: #attr-whitespace a[rel~=&quot;book mark&quot;] 
+PASS Document.querySelector: Attribute whitespace-separated list selector with double-quoted value, not matching value with space: #attr-whitespace a[rel~=&quot;book mark&quot;] 
+PASS Document.querySelectorAll: Attribute whitespace-separated list selector, matching title attribute with value using non-ASCII characters: #attr-whitespace [title~=中文] 
+PASS Document.querySelector: Attribute whitespace-separated list selector, matching title attribute with value using non-ASCII characters: #attr-whitespace [title~=中文] 
+PASS Document.querySelectorAll: Attribute hyphen-separated list selector, not matching unspecified lang attribute: #attr-hyphen-div1[lang|=&quot;en&quot;] 
+PASS Document.querySelector: Attribute hyphen-separated list selector, not matching unspecified lang attribute: #attr-hyphen-div1[lang|=&quot;en&quot;] 
+PASS Document.querySelectorAll: Attribute hyphen-separated list selector, matching lang attribute with exact value: #attr-hyphen-div2[lang|=&quot;fr&quot;] 
+PASS Document.querySelector: Attribute hyphen-separated list selector, matching lang attribute with exact value: #attr-hyphen-div2[lang|=&quot;fr&quot;] 
+PASS Document.querySelectorAll: Attribute hyphen-separated list selector, matching lang attribute with partial value: #attr-hyphen-div3[lang|=&quot;en&quot;] 
+PASS Document.querySelector: Attribute hyphen-separated list selector, matching lang attribute with partial value: #attr-hyphen-div3[lang|=&quot;en&quot;] 
+PASS Document.querySelectorAll: Attribute hyphen-separated list selector, not matching incorrect value: #attr-hyphen-div4[lang|=&quot;es-AR&quot;] 
+PASS Document.querySelector: Attribute hyphen-separated list selector, not matching incorrect value: #attr-hyphen-div4[lang|=&quot;es-AR&quot;] 
+PASS Document.querySelectorAll: Attribute begins with selector, matching href attributes beginning with specified substring: #attr-begins a[href^=&quot;http://www&quot;] 
+PASS Document.querySelector: Attribute begins with selector, matching href attributes beginning with specified substring: #attr-begins a[href^=&quot;http://www&quot;] 
+PASS Document.querySelectorAll: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^=&quot;en-&quot;] 
+PASS Document.querySelector: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^=&quot;en-&quot;] 
+PASS Document.querySelectorAll: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
+PASS Document.querySelector: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
+PASS Document.querySelectorAll: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=' apple'] 
+PASS Document.querySelector: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=' apple'] 
+PASS Document.querySelectorAll: Attribute begins with selector with double-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=&quot; apple&quot;] 
+PASS Document.querySelector: Attribute begins with selector with double-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=&quot; apple&quot;] 
+PASS Document.querySelectorAll: Attribute begins with selector with unquoted value, not matching class attribute not beginning with specified substring: #attr-begins [class^= apple] 
+PASS Document.querySelector: Attribute begins with selector with unquoted value, not matching class attribute not beginning with specified substring: #attr-begins [class^= apple] 
+PASS Document.querySelectorAll: Attribute ends with selector, matching href attributes ending with specified substring: #attr-ends a[href$=&quot;.org&quot;] 
+PASS Document.querySelector: Attribute ends with selector, matching href attributes ending with specified substring: #attr-ends a[href$=&quot;.org&quot;] 
+PASS Document.querySelectorAll: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$=&quot;-CH&quot;] 
+PASS Document.querySelector: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$=&quot;-CH&quot;] 
+PASS Document.querySelectorAll: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
+PASS Document.querySelector: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
+PASS Document.querySelectorAll: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring: #attr-ends [class$='apple '] 
+PASS Document.querySelector: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring: #attr-ends [class$='apple '] 
+PASS Document.querySelectorAll: Attribute ends with selector with double-quoted value, matching class attribute ending with specified substring: #attr-ends [class$=&quot;apple &quot;] 
+PASS Document.querySelector: Attribute ends with selector with double-quoted value, matching class attribute ending with specified substring: #attr-ends [class$=&quot;apple &quot;] 
+PASS Document.querySelectorAll: Attribute ends with selector with unquoted value, not matching class attribute not ending with specified substring: #attr-ends [class$=apple ] 
+PASS Document.querySelector: Attribute ends with selector with unquoted value, not matching class attribute not ending with specified substring: #attr-ends [class$=apple ] 
+PASS Document.querySelectorAll: Attribute contains selector, matching href attributes beginning with specified substring: #attr-contains a[href*=&quot;http://www&quot;] 
+PASS Document.querySelector: Attribute contains selector, matching href attributes beginning with specified substring: #attr-contains a[href*=&quot;http://www&quot;] 
+PASS Document.querySelectorAll: Attribute contains selector, matching href attributes ending with specified substring: #attr-contains a[href*=&quot;.org&quot;] 
+PASS Document.querySelector: Attribute contains selector, matching href attributes ending with specified substring: #attr-contains a[href*=&quot;.org&quot;] 
+PASS Document.querySelectorAll: Attribute contains selector, matching href attributes containing specified substring: #attr-contains a[href*=&quot;.example.&quot;] 
+PASS Document.querySelector: Attribute contains selector, matching href attributes containing specified substring: #attr-contains a[href*=&quot;.example.&quot;] 
+PASS Document.querySelectorAll: Attribute contains selector, matching lang attributes beginning with specified substring, : #attr-contains [lang*=&quot;en-&quot;] 
+PASS Document.querySelector: Attribute contains selector, matching lang attributes beginning with specified substring, : #attr-contains [lang*=&quot;en-&quot;] 
+PASS Document.querySelectorAll: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*=&quot;-CH&quot;] 
+PASS Document.querySelector: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*=&quot;-CH&quot;] 
+PASS Document.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
+PASS Document.querySelector: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
+PASS Document.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring: #attr-contains [class*='orange '] 
+PASS Document.querySelector: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring: #attr-contains [class*='orange '] 
+PASS Document.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute containing specified substring: #attr-contains [class*='ple banana ora'] 
+PASS Document.querySelector: Attribute contains selector with single-quoted value, matching class attribute containing specified substring: #attr-contains [class*='ple banana ora'] 
+PASS Document.querySelectorAll: Attribute contains selector with double-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=&quot; apple&quot;] 
+PASS Document.querySelector: Attribute contains selector with double-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=&quot; apple&quot;] 
+PASS Document.querySelectorAll: Attribute contains selector with double-quoted value, matching class attribute ending with specified substring: #attr-contains [class*=&quot;orange &quot;] 
+PASS Document.querySelector: Attribute contains selector with double-quoted value, matching class attribute ending with specified substring: #attr-contains [class*=&quot;orange &quot;] 
+PASS Document.querySelectorAll: Attribute contains selector with double-quoted value, matching class attribute containing specified substring: #attr-contains [class*=&quot;ple banana ora&quot;] 
+PASS Document.querySelector: Attribute contains selector with double-quoted value, matching class attribute containing specified substring: #attr-contains [class*=&quot;ple banana ora&quot;] 
+PASS Document.querySelectorAll: Attribute contains selector with unquoted value, matching class attribute beginning with specified substring: #attr-contains [class*= apple] 
+PASS Document.querySelector: Attribute contains selector with unquoted value, matching class attribute beginning with specified substring: #attr-contains [class*= apple] 
+PASS Document.querySelectorAll: Attribute contains selector with unquoted value, matching class attribute ending with specified substring: #attr-contains [class*=orange ] 
+PASS Document.querySelector: Attribute contains selector with unquoted value, matching class attribute ending with specified substring: #attr-contains [class*=orange ] 
+PASS Document.querySelectorAll: Attribute contains selector with unquoted value, matching class attribute containing specified substring: #attr-contains [class*= banana ] 
+PASS Document.querySelector: Attribute contains selector with unquoted value, matching class attribute containing specified substring: #attr-contains [class*= banana ] 
+PASS Document.querySelectorAll: :root pseudo-class selector, matching document root element: :root 
+PASS Document.querySelector: :root pseudo-class selector, matching document root element: :root 
+PASS Document.querySelectorAll: :nth-child selector, matching the third child element: #pseudo-nth-table1 :nth-child(3) 
+PASS Document.querySelector: :nth-child selector, matching the third child element: #pseudo-nth-table1 :nth-child(3) 
+PASS Document.querySelectorAll: :nth-child selector, matching every third child element: #pseudo-nth li:nth-child(3n) 
+PASS Document.querySelector: :nth-child selector, matching every third child element: #pseudo-nth li:nth-child(3n) 
+PASS Document.querySelectorAll: :nth-child selector, matching every second child element, starting from the fourth: #pseudo-nth li:nth-child(2n+4) 
+PASS Document.querySelector: :nth-child selector, matching every second child element, starting from the fourth: #pseudo-nth li:nth-child(2n+4) 
+PASS Document.querySelectorAll: :nth-child selector, matching every fourth child element, starting from the third: #pseudo-nth-p1 :nth-child(4n-1) 
+PASS Document.querySelector: :nth-child selector, matching every fourth child element, starting from the third: #pseudo-nth-p1 :nth-child(4n-1) 
+PASS Document.querySelectorAll: :nth-last-child selector, matching the third last child element: #pseudo-nth-table1 :nth-last-child(3) 
+PASS Document.querySelector: :nth-last-child selector, matching the third last child element: #pseudo-nth-table1 :nth-last-child(3) 
+PASS Document.querySelectorAll: :nth-last-child selector, matching every third child element from the end: #pseudo-nth li:nth-last-child(3n) 
+PASS Document.querySelector: :nth-last-child selector, matching every third child element from the end: #pseudo-nth li:nth-last-child(3n) 
+PASS Document.querySelectorAll: :nth-last-child selector, matching every second child element from the end, starting from the fourth last: #pseudo-nth li:nth-last-child(2n+4) 
+PASS Document.querySelector: :nth-last-child selector, matching every second child element from the end, starting from the fourth last: #pseudo-nth li:nth-last-child(2n+4) 
+PASS Document.querySelectorAll: :nth-last-child selector, matching every fourth element from the end, starting from the third last: #pseudo-nth-p1 :nth-last-child(4n-1) 
+PASS Document.querySelector: :nth-last-child selector, matching every fourth element from the end, starting from the third last: #pseudo-nth-p1 :nth-last-child(4n-1) 
+PASS Document.querySelectorAll: :nth-of-type selector, matching the third em element: #pseudo-nth-p1 em:nth-of-type(3) 
+PASS Document.querySelector: :nth-of-type selector, matching the third em element: #pseudo-nth-p1 em:nth-of-type(3) 
+PASS Document.querySelectorAll: :nth-of-type selector, matching every second element of their type: #pseudo-nth-p1 :nth-of-type(2n) 
+PASS Document.querySelector: :nth-of-type selector, matching every second element of their type: #pseudo-nth-p1 :nth-of-type(2n) 
+PASS Document.querySelectorAll: :nth-of-type selector, matching every second elemetn of their type, starting from the first: #pseudo-nth-p1 span:nth-of-type(2n-1) 
+PASS Document.querySelector: :nth-of-type selector, matching every second elemetn of their type, starting from the first: #pseudo-nth-p1 span:nth-of-type(2n-1) 
+PASS Document.querySelectorAll: :nth-last-of-type selector, matching the thrid last em element: #pseudo-nth-p1 em:nth-last-of-type(3) 
+PASS Document.querySelector: :nth-last-of-type selector, matching the thrid last em element: #pseudo-nth-p1 em:nth-last-of-type(3) 
+PASS Document.querySelectorAll: :nth-last-of-type selector, matching every second last element of their type: #pseudo-nth-p1 :nth-last-of-type(2n) 
+PASS Document.querySelector: :nth-last-of-type selector, matching every second last element of their type: #pseudo-nth-p1 :nth-last-of-type(2n) 
+PASS Document.querySelectorAll: :nth-last-of-type selector, matching every second last element of their type, starting from the last: #pseudo-nth-p1 span:nth-last-of-type(2n-1) 
+PASS Document.querySelector: :nth-last-of-type selector, matching every second last element of their type, starting from the last: #pseudo-nth-p1 span:nth-last-of-type(2n-1) 
+PASS Document.querySelectorAll: :first-of-type selector, matching the first em element: #pseudo-nth-p1 em:first-of-type 
+PASS Document.querySelector: :first-of-type selector, matching the first em element: #pseudo-nth-p1 em:first-of-type 
+PASS Document.querySelectorAll: :first-of-type selector, matching the first of every type of element: #pseudo-nth-p1 :first-of-type 
+PASS Document.querySelector: :first-of-type selector, matching the first of every type of element: #pseudo-nth-p1 :first-of-type 
+PASS Document.querySelectorAll: :first-of-type selector, matching the first td element in each table row: #pseudo-nth-table1 tr :first-of-type 
+PASS Document.querySelector: :first-of-type selector, matching the first td element in each table row: #pseudo-nth-table1 tr :first-of-type 
+PASS Document.querySelectorAll: :last-of-type selector, matching the last em elemnet: #pseudo-nth-p1 em:last-of-type 
+PASS Document.querySelector: :last-of-type selector, matching the last em elemnet: #pseudo-nth-p1 em:last-of-type 
+PASS Document.querySelectorAll: :last-of-type selector, matching the last of every type of element: #pseudo-nth-p1 :last-of-type 
+PASS Document.querySelector: :last-of-type selector, matching the last of every type of element: #pseudo-nth-p1 :last-of-type 
+PASS Document.querySelectorAll: :last-of-type selector, matching the last td element in each table row: #pseudo-nth-table1 tr :last-of-type 
+PASS Document.querySelector: :last-of-type selector, matching the last td element in each table row: #pseudo-nth-table1 tr :last-of-type 
+PASS Document.querySelectorAll: :first-child pseudo-class selector, matching first child div element: #pseudo-first-child div:first-child 
+PASS Document.querySelector: :first-child pseudo-class selector, matching first child div element: #pseudo-first-child div:first-child 
+PASS Document.querySelectorAll: :first-child pseudo-class selector, doesn't match non-first-child elements: .pseudo-first-child-div2:first-child, .pseudo-first-child-div3:first-child 
+PASS Document.querySelector: :first-child pseudo-class selector, doesn't match non-first-child elements: .pseudo-first-child-div2:first-child, .pseudo-first-child-div3:first-child 
+PASS Document.querySelectorAll: :first-child pseudo-class selector, matching first-child of multiple elements: #pseudo-first-child span:first-child 
+PASS Document.querySelector: :first-child pseudo-class selector, matching first-child of multiple elements: #pseudo-first-child span:first-child 
+PASS Document.querySelectorAll: :last-child pseudo-class selector, matching last child div element: #pseudo-last-child div:last-child 
+PASS Document.querySelector: :last-child pseudo-class selector, matching last child div element: #pseudo-last-child div:last-child 
+PASS Document.querySelectorAll: :last-child pseudo-class selector, doesn't match non-last-child elements: .pseudo-last-child-div1:last-child, .pseudo-last-child-div2:first-child 
+PASS Document.querySelector: :last-child pseudo-class selector, doesn't match non-last-child elements: .pseudo-last-child-div1:last-child, .pseudo-last-child-div2:first-child 
+PASS Document.querySelectorAll: :last-child pseudo-class selector, matching first-child of multiple elements: #pseudo-last-child span:last-child 
+PASS Document.querySelector: :last-child pseudo-class selector, matching first-child of multiple elements: #pseudo-last-child span:last-child 
+PASS Document.querySelectorAll: :pseudo-only-child pseudo-class selector, matching all only-child elements: #pseudo-only :only-child 
+PASS Document.querySelector: :pseudo-only-child pseudo-class selector, matching all only-child elements: #pseudo-only :only-child 
+PASS Document.querySelectorAll: :pseudo-only-child pseudo-class selector, matching only-child em elements: #pseudo-only em:only-child 
+PASS Document.querySelector: :pseudo-only-child pseudo-class selector, matching only-child em elements: #pseudo-only em:only-child 
+PASS Document.querySelectorAll: :pseudo-only-of-type pseudo-class selector, matching all elements with no siblings of the same type: #pseudo-only :only-of-type 
+PASS Document.querySelector: :pseudo-only-of-type pseudo-class selector, matching all elements with no siblings of the same type: #pseudo-only :only-of-type 
+PASS Document.querySelectorAll: :pseudo-only-of-type pseudo-class selector, matching em elements with no siblings of the same type: #pseudo-only em:only-of-type 
+PASS Document.querySelector: :pseudo-only-of-type pseudo-class selector, matching em elements with no siblings of the same type: #pseudo-only em:only-of-type 
+PASS Document.querySelectorAll: :empty pseudo-class selector, matching empty p elements: #pseudo-empty p:empty 
+PASS Document.querySelector: :empty pseudo-class selector, matching empty p elements: #pseudo-empty p:empty 
+PASS Document.querySelectorAll: :empty pseudo-class selector, matching all empty elements: #pseudo-empty :empty 
+PASS Document.querySelector: :empty pseudo-class selector, matching all empty elements: #pseudo-empty :empty 
+PASS Document.querySelectorAll: :link and :visited pseudo-class selectors, matching a and area elements with href attributes: #pseudo-link :link, #pseudo-link :visited 
+PASS Document.querySelector: :link and :visited pseudo-class selectors, matching a and area elements with href attributes: #pseudo-link :link, #pseudo-link :visited 
+PASS Document.querySelectorAll: :link and :visited pseudo-class selectors, matching link elements with href attributes: #head :link, #head :visited 
+PASS Document.querySelector: :link and :visited pseudo-class selectors, matching link elements with href attributes: #head :link, #head :visited 
+PASS Document.querySelectorAll: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target 
+PASS Document.querySelector: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target 
+PASS Document.querySelectorAll: :lang pseudo-class selector, matching inherited language: #pseudo-lang-div1:lang(en) 
+PASS Document.querySelector: :lang pseudo-class selector, matching inherited language: #pseudo-lang-div1:lang(en) 
+PASS Document.querySelectorAll: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr) 
+PASS Document.querySelector: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr) 
+PASS Document.querySelectorAll: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en) 
+PASS Document.querySelector: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en) 
+PASS Document.querySelectorAll: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR) 
+PASS Document.querySelector: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR) 
+PASS Document.querySelectorAll: :enabled pseudo-class selector, matching all enabled form controls: #pseudo-ui :enabled 
+PASS Document.querySelector: :enabled pseudo-class selector, matching all enabled form controls: #pseudo-ui :enabled 
+PASS Document.querySelectorAll: :enabled pseudo-class selector, matching all disabled form controls: #pseudo-ui :disabled 
+PASS Document.querySelector: :enabled pseudo-class selector, matching all disabled form controls: #pseudo-ui :disabled 
+PASS Document.querySelectorAll: :checked pseudo-class selector, matching checked radio buttons and checkboxes: #pseudo-ui :checked 
+PASS Document.querySelector: :checked pseudo-class selector, matching checked radio buttons and checkboxes: #pseudo-ui :checked 
+PASS Document.querySelectorAll: :not pseudo-class selector, matching : #not&gt;:not(div) 
+PASS Document.querySelector: :not pseudo-class selector, matching : #not&gt;:not(div) 
+PASS Document.querySelectorAll: :not pseudo-class selector, matching : #not * :not(:first-child) 
+PASS Document.querySelector: :not pseudo-class selector, matching : #not * :not(:first-child) 
+PASS Document.querySelectorAll: :not pseudo-class selector, matching nothing: :not(*) 
+PASS Document.querySelector: :not pseudo-class selector, matching nothing: :not(*) 
+PASS Document.querySelectorAll: :not pseudo-class selector, matching nothing: :not(*|*) 
+PASS Document.querySelector: :not pseudo-class selector, matching nothing: :not(*|*) 
+PASS Document.querySelectorAll: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line 
+PASS Document.querySelector: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line 
+PASS Document.querySelectorAll: ::first-line pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-line 
+PASS Document.querySelector: ::first-line pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-line 
+PASS Document.querySelectorAll: :first-letter pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-letter 
+PASS Document.querySelector: :first-letter pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-letter 
+PASS Document.querySelectorAll: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter 
+PASS Document.querySelector: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter 
+PASS Document.querySelectorAll: :before pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:before 
+PASS Document.querySelector: :before pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:before 
+PASS Document.querySelectorAll: ::before pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::before 
+PASS Document.querySelector: ::before pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::before 
+PASS Document.querySelectorAll: :after pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:after 
+PASS Document.querySelector: :after pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:after 
+PASS Document.querySelectorAll: ::after pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::after 
+PASS Document.querySelector: ::after pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::after 
+PASS Document.querySelectorAll: Class selector, matching element with specified class: .class-p 
+PASS Document.querySelector: Class selector, matching element with specified class: .class-p 
+PASS Document.querySelectorAll: Class selector, chained, matching only elements with all specified classes: #class .apple.orange.banana 
+PASS Document.querySelector: Class selector, chained, matching only elements with all specified classes: #class .apple.orange.banana 
+PASS Document.querySelectorAll: Class Selector, chained, with type selector: div.apple.banana.orange 
+PASS Document.querySelector: Class Selector, chained, with type selector: div.apple.banana.orange 
+PASS Document.querySelectorAll: Class selector, matching element with class value using non-ASCII characters (1): .台北Táiběi 
+PASS Document.querySelector: Class selector, matching element with class value using non-ASCII characters (1): .台北Táiběi 
+PASS Document.querySelectorAll: Class selector, matching multiple elements with class value using non-ASCII characters: .台北 
+PASS Document.querySelector: Class selector, matching multiple elements with class value using non-ASCII characters: .台北 
+PASS Document.querySelectorAll: Class selector, chained, matching element with multiple class values using non-ASCII characters (1): .台北Táiběi.台北 
+PASS Document.querySelector: Class selector, chained, matching element with multiple class values using non-ASCII characters (1): .台北Táiběi.台北 
+PASS Document.querySelectorAll: Class selector, matching element with class with escaped character: .foo\:bar 
+PASS Document.querySelector: Class selector, matching element with class with escaped character: .foo\:bar 
+PASS Document.querySelectorAll: Class selector, matching element with class with escaped character: .test\.foo\[5\]bar 
+PASS Document.querySelector: Class selector, matching element with class with escaped character: .test\.foo\[5\]bar 
+PASS Document.querySelectorAll: ID selector, matching element with specified id: #id #id-div1 
+PASS Document.querySelector: ID selector, matching element with specified id: #id #id-div1 
+PASS Document.querySelectorAll: ID selector, chained, matching element with specified id: #id-div1, #id-div1 
+PASS Document.querySelector: ID selector, chained, matching element with specified id: #id-div1, #id-div1 
+PASS Document.querySelectorAll: ID selector, chained, matching element with specified id: #id-div1, #id-div2 
+PASS Document.querySelector: ID selector, chained, matching element with specified id: #id-div1, #id-div2 
+PASS Document.querySelectorAll: ID Selector, chained, with type selector: div#id-div1, div#id-div2 
+PASS Document.querySelector: ID Selector, chained, with type selector: div#id-div1, div#id-div2 
+PASS Document.querySelectorAll: ID selector, not matching non-existent descendant: #id #none 
+PASS Document.querySelector: ID selector, not matching non-existent descendant: #id #none 
+PASS Document.querySelectorAll: ID selector, not matching non-existent ancestor: #none #id-div1 
+PASS Document.querySelector: ID selector, not matching non-existent ancestor: #none #id-div1 
+PASS Document.querySelectorAll: ID selector, matching multiple elements with duplicate id: #id-li-duplicate 
+PASS Document.querySelector: ID selector, matching multiple elements with duplicate id: #id-li-duplicate 
+PASS Document.querySelectorAll: ID selector, matching id value using non-ASCII characters (1): #台北Táiběi 
+PASS Document.querySelector: ID selector, matching id value using non-ASCII characters (1): #台北Táiběi 
+PASS Document.querySelectorAll: ID selector, matching id value using non-ASCII characters (2): #台北 
+PASS Document.querySelector: ID selector, matching id value using non-ASCII characters (2): #台北 
+PASS Document.querySelectorAll: ID selector, matching id values using non-ASCII characters (1): #台北Táiběi, #台北 
+PASS Document.querySelector: ID selector, matching id values using non-ASCII characters (1): #台北Táiběi, #台北 
+PASS Document.querySelectorAll: ID selector, matching element with id with escaped character: #\#foo\:bar 
+PASS Document.querySelector: ID selector, matching element with id with escaped character: #\#foo\:bar 
+PASS Document.querySelectorAll: ID selector, matching element with id with escaped character: #test\.foo\[5\]bar 
+PASS Document.querySelector: ID selector, matching element with id with escaped character: #test\.foo\[5\]bar 
+PASS Document.querySelectorAll: Namespace selector, matching element with any namespace: #any-namespace *|div 
+PASS Document.querySelector: Namespace selector, matching element with any namespace: #any-namespace *|div 
+FAIL Document.querySelectorAll: Namespace selector, matching div elements in no namespace only: #no-namespace |div assert_equals: The method should return the expected number of matches. expected 1 but got 4
+FAIL Document.querySelector: Namespace selector, matching div elements in no namespace only: #no-namespace |div assert_equals: The method should return the first match. expected &quot;no-namespace-div3&quot; but got &quot;no-namespace-div1&quot;
+FAIL Document.querySelectorAll: Namespace selector, matching any elements in no namespace only: #no-namespace |* assert_equals: The method should return the expected number of matches. expected 1 but got 4
+FAIL Document.querySelector: Namespace selector, matching any elements in no namespace only: #no-namespace |* assert_equals: The method should return the first match. expected &quot;no-namespace-div3&quot; but got &quot;no-namespace-div1&quot;
+PASS Document.querySelectorAll: Descendant combinator, matching element that is a descendant of an element with id: #descendant div 
+PASS Document.querySelector: Descendant combinator, matching element that is a descendant of an element with id: #descendant div 
+PASS Document.querySelectorAll: Descendant combinator, matching element with id that is a descendant of an element: body #descendant-div1 
+PASS Document.querySelector: Descendant combinator, matching element with id that is a descendant of an element: body #descendant-div1 
+PASS Document.querySelectorAll: Descendant combinator, matching element with id that is a descendant of an element: div #descendant-div1 
+PASS Document.querySelector: Descendant combinator, matching element with id that is a descendant of an element: div #descendant-div1 
+PASS Document.querySelectorAll: Descendant combinator, matching element with id that is a descendant of an element with id: #descendant #descendant-div2 
+PASS Document.querySelector: Descendant combinator, matching element with id that is a descendant of an element with id: #descendant #descendant-div2 
+PASS Document.querySelectorAll: Descendant combinator, matching element with class that is a descendant of an element with id: #descendant .descendant-div2 
+PASS Document.querySelector: Descendant combinator, matching element with class that is a descendant of an element with id: #descendant .descendant-div2 
+PASS Document.querySelectorAll: Descendant combinator, matching element with class that is a descendant of an element with class: .descendant-div1 .descendant-div3 
+PASS Document.querySelector: Descendant combinator, matching element with class that is a descendant of an element with class: .descendant-div1 .descendant-div3 
+PASS Document.querySelectorAll: Descendant combinator, not matching element with id that is not a descendant of an element with id: #descendant-div1 #descendant-div4 
+PASS Document.querySelector: Descendant combinator, not matching element with id that is not a descendant of an element with id: #descendant-div1 #descendant-div4 
+PASS Document.querySelectorAll: Descendant combinator, whitespace characters: #descendant        
+#descendant-div2 
+PASS Document.querySelector: Descendant combinator, whitespace characters: #descendant        
+#descendant-div2 
+PASS Document.querySelectorAll: Child combinator, matching element that is a child of an element with id: #child&gt;div 
+PASS Document.querySelector: Child combinator, matching element that is a child of an element with id: #child&gt;div 
+PASS Document.querySelectorAll: Child combinator, matching element with id that is a child of an element: div&gt;#child-div1 
+PASS Document.querySelector: Child combinator, matching element with id that is a child of an element: div&gt;#child-div1 
+PASS Document.querySelectorAll: Child combinator, matching element with id that is a child of an element with id: #child&gt;#child-div1 
+PASS Document.querySelector: Child combinator, matching element with id that is a child of an element with id: #child&gt;#child-div1 
+PASS Document.querySelectorAll: Child combinator, matching element with id that is a child of an element with class: #child-div1&gt;.child-div2 
+PASS Document.querySelector: Child combinator, matching element with id that is a child of an element with class: #child-div1&gt;.child-div2 
+PASS Document.querySelectorAll: Child combinator, matching element with class that is a child of an element with class: .child-div1&gt;.child-div2 
+PASS Document.querySelector: Child combinator, matching element with class that is a child of an element with class: .child-div1&gt;.child-div2 
+PASS Document.querySelectorAll: Child combinator, not matching element with id that is not a child of an element with id: #child&gt;#child-div3 
+PASS Document.querySelector: Child combinator, not matching element with id that is not a child of an element with id: #child&gt;#child-div3 
+PASS Document.querySelectorAll: Child combinator, not matching element with id that is not a child of an element with class: #child-div1&gt;.child-div3 
+PASS Document.querySelector: Child combinator, not matching element with id that is not a child of an element with class: #child-div1&gt;.child-div3 
+PASS Document.querySelectorAll: Child combinator, not matching element with class that is not a child of an element with class: .child-div1&gt;.child-div3 
+PASS Document.querySelector: Child combinator, not matching element with class that is not a child of an element with class: .child-div1&gt;.child-div3 
+PASS Document.querySelectorAll: Child combinator, surrounded by whitespace: #child-div1        
+&gt;        
+#child-div2 
+PASS Document.querySelector: Child combinator, surrounded by whitespace: #child-div1        
+&gt;        
+#child-div2 
+PASS Document.querySelectorAll: Child combinator, whitespace after: #child-div1&gt;        
+#child-div2 
+PASS Document.querySelector: Child combinator, whitespace after: #child-div1&gt;        
+#child-div2 
+PASS Document.querySelectorAll: Child combinator, whitespace before: #child-div1        
+&gt;#child-div2 
+PASS Document.querySelector: Child combinator, whitespace before: #child-div1        
+&gt;#child-div2 
+PASS Document.querySelectorAll: Child combinator, no whitespace: #child-div1&gt;#child-div2 
+PASS Document.querySelector: Child combinator, no whitespace: #child-div1&gt;#child-div2 
+PASS Document.querySelectorAll: Adjacent sibling combinator, matching element that is an adjacent sibling of an element with id: #adjacent-div2+div 
+PASS Document.querySelector: Adjacent sibling combinator, matching element that is an adjacent sibling of an element with id: #adjacent-div2+div 
+PASS Document.querySelectorAll: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element: div+#adjacent-div4 
+PASS Document.querySelector: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element: div+#adjacent-div4 
+PASS Document.querySelectorAll: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element with id: #adjacent-div2+#adjacent-div4 
+PASS Document.querySelector: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element with id: #adjacent-div2+#adjacent-div4 
+PASS Document.querySelectorAll: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with id: #adjacent-div2+.adjacent-div4 
+PASS Document.querySelector: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with id: #adjacent-div2+.adjacent-div4 
+PASS Document.querySelectorAll: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with class: .adjacent-div2+.adjacent-div4 
+PASS Document.querySelector: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with class: .adjacent-div2+.adjacent-div4 
+PASS Document.querySelectorAll: Adjacent sibling combinator, matching p element that is an adjacent sibling of a div element: #adjacent div+p 
+PASS Document.querySelector: Adjacent sibling combinator, matching p element that is an adjacent sibling of a div element: #adjacent div+p 
+PASS Document.querySelectorAll: Adjacent sibling combinator, not matching element with id that is not an adjacent sibling of an element with id: #adjacent-div2+#adjacent-p2, #adjacent-div2+#adjacent-div1 
+PASS Document.querySelector: Adjacent sibling combinator, not matching element with id that is not an adjacent sibling of an element with id: #adjacent-div2+#adjacent-p2, #adjacent-div2+#adjacent-div1 
+PASS Document.querySelectorAll: Adjacent sibling combinator, surrounded by whitespace: #adjacent-p2        
++        
+#adjacent-p3 
+PASS Document.querySelector: Adjacent sibling combinator, surrounded by whitespace: #adjacent-p2        
++        
+#adjacent-p3 
+PASS Document.querySelectorAll: Adjacent sibling combinator, whitespace after: #adjacent-p2+        
+#adjacent-p3 
+PASS Document.querySelector: Adjacent sibling combinator, whitespace after: #adjacent-p2+        
+#adjacent-p3 
+PASS Document.querySelectorAll: Adjacent sibling combinator, whitespace before: #adjacent-p2        
++#adjacent-p3 
+PASS Document.querySelector: Adjacent sibling combinator, whitespace before: #adjacent-p2        
++#adjacent-p3 
+PASS Document.querySelectorAll: Adjacent sibling combinator, no whitespace: #adjacent-p2+#adjacent-p3 
+PASS Document.querySelector: Adjacent sibling combinator, no whitespace: #adjacent-p2+#adjacent-p3 
+PASS Document.querySelectorAll: General sibling combinator, matching element that is a sibling of an element with id: #sibling-div2~div 
+PASS Document.querySelector: General sibling combinator, matching element that is a sibling of an element with id: #sibling-div2~div 
+PASS Document.querySelectorAll: General sibling combinator, matching element with id that is a sibling of an element: div~#sibling-div4 
+PASS Document.querySelector: General sibling combinator, matching element with id that is a sibling of an element: div~#sibling-div4 
+PASS Document.querySelectorAll: General sibling combinator, matching element with id that is a sibling of an element with id: #sibling-div2~#sibling-div4 
+PASS Document.querySelector: General sibling combinator, matching element with id that is a sibling of an element with id: #sibling-div2~#sibling-div4 
+PASS Document.querySelectorAll: General sibling combinator, matching element with class that is a sibling of an element with id: #sibling-div2~.sibling-div 
+PASS Document.querySelector: General sibling combinator, matching element with class that is a sibling of an element with id: #sibling-div2~.sibling-div 
+PASS Document.querySelectorAll: General sibling combinator, matching p element that is a sibling of a div element: #sibling div~p 
+PASS Document.querySelector: General sibling combinator, matching p element that is a sibling of a div element: #sibling div~p 
+PASS Document.querySelectorAll: General sibling combinator, not matching element with id that is not a sibling after a p element: #sibling&gt;p~div 
+PASS Document.querySelector: General sibling combinator, not matching element with id that is not a sibling after a p element: #sibling&gt;p~div 
+PASS Document.querySelectorAll: General sibling combinator, not matching element with id that is not a sibling after an element with id: #sibling-div2~#sibling-div3, #sibling-div2~#sibling-div1 
+PASS Document.querySelector: General sibling combinator, not matching element with id that is not a sibling after an element with id: #sibling-div2~#sibling-div3, #sibling-div2~#sibling-div1 
+PASS Document.querySelectorAll: General sibling combinator, surrounded by whitespace: #sibling-p2        
+~        
+#sibling-p3 
+PASS Document.querySelector: General sibling combinator, surrounded by whitespace: #sibling-p2        
+~        
+#sibling-p3 
+PASS Document.querySelectorAll: General sibling combinator, whitespace after: #sibling-p2~        
+#sibling-p3 
+PASS Document.querySelector: General sibling combinator, whitespace after: #sibling-p2~        
+#sibling-p3 
+PASS Document.querySelectorAll: General sibling combinator, whitespace before: #sibling-p2        
+~#sibling-p3 
+PASS Document.querySelector: General sibling combinator, whitespace before: #sibling-p2        
+~#sibling-p3 
+PASS Document.querySelectorAll: General sibling combinator, no whitespace: #sibling-p2~#sibling-p3 
+PASS Document.querySelector: General sibling combinator, no whitespace: #sibling-p2~#sibling-p3 
+PASS Document.querySelectorAll: Syntax, group of selectors separator, surrounded by whitespace: #group em        

+,        

+#group strong 
+PASS Document.querySelector: Syntax, group of selectors separator, surrounded by whitespace: #group em        

+,        

+#group strong 
+PASS Document.querySelectorAll: Syntax, group of selectors separator, whitespace after: #group em,        
+#group strong 
+PASS Document.querySelector: Syntax, group of selectors separator, whitespace after: #group em,        
+#group strong 
+PASS Document.querySelectorAll: Syntax, group of selectors separator, whitespace before: #group em        
+,#group strong 
+PASS Document.querySelector: Syntax, group of selectors separator, whitespace before: #group em        
+,#group strong 
+PASS Document.querySelectorAll: Syntax, group of selectors separator, no whitespace: #group em,#group strong 
+PASS Document.querySelector: Syntax, group of selectors separator, no whitespace: #group em,#group strong 
+PASS Detached Element.querySelectorAll: Type selector, matching html element: html 
+PASS Detached Element.querySelector: Type selector, matching html element: html 
+PASS Detached Element.querySelectorAll: Type selector, matching body element: body 
+PASS Detached Element.querySelector: Type selector, matching body element: body 
+PASS Detached Element.querySelectorAll: Universal selector, matching all children of element with specified ID: #universal&gt;* 
+PASS Detached Element.querySelector: Universal selector, matching all children of element with specified ID: #universal&gt;* 
+PASS Detached Element.querySelectorAll: Universal selector, matching all grandchildren of element with specified ID: #universal&gt;*&gt;* 
+PASS Detached Element.querySelector: Universal selector, matching all grandchildren of element with specified ID: #universal&gt;*&gt;* 
+PASS Detached Element.querySelectorAll: Universal selector, matching all children of empty element with specified ID: #empty&gt;* 
+PASS Detached Element.querySelector: Universal selector, matching all children of empty element with specified ID: #empty&gt;* 
+PASS Detached Element.querySelectorAll: Universal selector, matching all descendants of element with specified ID: #universal * 
+PASS Detached Element.querySelector: Universal selector, matching all descendants of element with specified ID: #universal * 
+PASS Detached Element.querySelectorAll: Attribute presence selector, matching align attribute with value: .attr-presence-div1[align] 
+PASS Detached Element.querySelector: Attribute presence selector, matching align attribute with value: .attr-presence-div1[align] 
+PASS Detached Element.querySelectorAll: Attribute presence selector, matching align attribute with empty value: .attr-presence-div2[align] 
+PASS Detached Element.querySelector: Attribute presence selector, matching align attribute with empty value: .attr-presence-div2[align] 
+PASS Detached Element.querySelectorAll: Attribute presence selector, matching title attribute, case insensitivity: #attr-presence [TiTlE] 
+PASS Detached Element.querySelector: Attribute presence selector, matching title attribute, case insensitivity: #attr-presence [TiTlE] 
+PASS Detached Element.querySelectorAll: Attribute presence selector, matching custom data-* attribute: [data-attr-presence] 
+PASS Detached Element.querySelector: Attribute presence selector, matching custom data-* attribute: [data-attr-presence] 
+PASS Detached Element.querySelectorAll: Attribute presence selector, not matching attribute with similar name: .attr-presence-div3[align], .attr-presence-div4[align] 
+PASS Detached Element.querySelector: Attribute presence selector, not matching attribute with similar name: .attr-presence-div3[align], .attr-presence-div4[align] 
+PASS Detached Element.querySelectorAll: Attribute presence selector, matching attribute with non-ASCII characters: ul[data-中文] 
+PASS Detached Element.querySelector: Attribute presence selector, matching attribute with non-ASCII characters: ul[data-中文] 
+PASS Detached Element.querySelectorAll: Attribute presence selector, not matching default option without selected attribute: #attr-presence-select1 option[selected] 
+PASS Detached Element.querySelector: Attribute presence selector, not matching default option without selected attribute: #attr-presence-select1 option[selected] 
+PASS Detached Element.querySelectorAll: Attribute presence selector, matching option with selected attribute: #attr-presence-select2 option[selected] 
+PASS Detached Element.querySelector: Attribute presence selector, matching option with selected attribute: #attr-presence-select2 option[selected] 
+PASS Detached Element.querySelectorAll: Attribute presence selector, matching multiple options with selected attributes: #attr-presence-select3 option[selected] 
+PASS Detached Element.querySelector: Attribute presence selector, matching multiple options with selected attributes: #attr-presence-select3 option[selected] 
+PASS Detached Element.querySelectorAll: Attribute value selector, matching align attribute with value: #attr-value [align=&quot;center&quot;] 
+PASS Detached Element.querySelector: Attribute value selector, matching align attribute with value: #attr-value [align=&quot;center&quot;] 
+PASS Detached Element.querySelectorAll: Attribute value selector, matching align attribute with empty value: #attr-value [align=&quot;&quot;] 
+PASS Detached Element.querySelector: Attribute value selector, matching align attribute with empty value: #attr-value [align=&quot;&quot;] 
+PASS Detached Element.querySelectorAll: Attribute value selector, not matching align attribute with partial value: #attr-value [align=&quot;c&quot;] 
+PASS Detached Element.querySelector: Attribute value selector, not matching align attribute with partial value: #attr-value [align=&quot;c&quot;] 
+PASS Detached Element.querySelectorAll: Attribute value selector, not matching align attribute with incorrect value: #attr-value [align=&quot;centera&quot;] 
+PASS Detached Element.querySelector: Attribute value selector, not matching align attribute with incorrect value: #attr-value [align=&quot;centera&quot;] 
+PASS Detached Element.querySelectorAll: Attribute value selector, matching custom data-* attribute with unicode escaped value: [data-attr-value=&quot;\e9&quot;] 
+PASS Detached Element.querySelector: Attribute value selector, matching custom data-* attribute with unicode escaped value: [data-attr-value=&quot;\e9&quot;] 
+PASS Detached Element.querySelectorAll: Attribute value selector, matching custom data-* attribute with escaped character: [data-attr-value_foo=&quot;\e9&quot;] 
+PASS Detached Element.querySelector: Attribute value selector, matching custom data-* attribute with escaped character: [data-attr-value_foo=&quot;\e9&quot;] 
+PASS Detached Element.querySelectorAll: Attribute value selector with single-quoted value, matching multiple inputs with type attributes: #attr-value input[type='hidden'],#attr-value input[type='radio'] 
+PASS Detached Element.querySelector: Attribute value selector with single-quoted value, matching multiple inputs with type attributes: #attr-value input[type='hidden'],#attr-value input[type='radio'] 
+PASS Detached Element.querySelectorAll: Attribute value selector with double-quoted value, matching multiple inputs with type attributes: #attr-value input[type=&quot;hidden&quot;],#attr-value input[type='radio'] 
+PASS Detached Element.querySelector: Attribute value selector with double-quoted value, matching multiple inputs with type attributes: #attr-value input[type=&quot;hidden&quot;],#attr-value input[type='radio'] 
+PASS Detached Element.querySelectorAll: Attribute value selector with unquoted value, matching multiple inputs with type attributes: #attr-value input[type=hidden],#attr-value input[type=radio] 
+PASS Detached Element.querySelector: Attribute value selector with unquoted value, matching multiple inputs with type attributes: #attr-value input[type=hidden],#attr-value input[type=radio] 
+PASS Detached Element.querySelectorAll: Attribute value selector, matching attribute with value using non-ASCII characters: [data-attr-value=中文] 
+PASS Detached Element.querySelector: Attribute value selector, matching attribute with value using non-ASCII characters: [data-attr-value=中文] 
+PASS Detached Element.querySelectorAll: Attribute whitespace-separated list selector, matching class attribute with value: #attr-whitespace [class~=&quot;div1&quot;] 
+PASS Detached Element.querySelector: Attribute whitespace-separated list selector, matching class attribute with value: #attr-whitespace [class~=&quot;div1&quot;] 
+PASS Detached Element.querySelectorAll: Attribute whitespace-separated list selector, not matching class attribute with empty value: #attr-whitespace [class~=&quot;&quot;] 
+PASS Detached Element.querySelector: Attribute whitespace-separated list selector, not matching class attribute with empty value: #attr-whitespace [class~=&quot;&quot;] 
+PASS Detached Element.querySelectorAll: Attribute whitespace-separated list selector, not matching class attribute with partial value: [data-attr-whitespace~=&quot;div&quot;] 
+PASS Detached Element.querySelector: Attribute whitespace-separated list selector, not matching class attribute with partial value: [data-attr-whitespace~=&quot;div&quot;] 
+PASS Detached Element.querySelectorAll: Attribute whitespace-separated list selector, matching custom data-* attribute with unicode escaped value: [data-attr-whitespace~=&quot;\0000e9&quot;] 
+PASS Detached Element.querySelector: Attribute whitespace-separated list selector, matching custom data-* attribute with unicode escaped value: [data-attr-whitespace~=&quot;\0000e9&quot;] 
+PASS Detached Element.querySelectorAll: Attribute whitespace-separated list selector, matching custom data-* attribute with escaped character: [data-attr-whitespace_foo~=&quot;\e9&quot;] 
+PASS Detached Element.querySelector: Attribute whitespace-separated list selector, matching custom data-* attribute with escaped character: [data-attr-whitespace_foo~=&quot;\e9&quot;] 
+PASS Detached Element.querySelectorAll: Attribute whitespace-separated list selector with single-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~='bookmark'],  #attr-whitespace a[rel~='nofollow'] 
+PASS Detached Element.querySelector: Attribute whitespace-separated list selector with single-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~='bookmark'],  #attr-whitespace a[rel~='nofollow'] 
+PASS Detached Element.querySelectorAll: Attribute whitespace-separated list selector with double-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=&quot;bookmark&quot;],#attr-whitespace a[rel~='nofollow'] 
+PASS Detached Element.querySelector: Attribute whitespace-separated list selector with double-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=&quot;bookmark&quot;],#attr-whitespace a[rel~='nofollow'] 
+PASS Detached Element.querySelectorAll: Attribute whitespace-separated list selector with unquoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=bookmark],    #attr-whitespace a[rel~=nofollow] 
+PASS Detached Element.querySelector: Attribute whitespace-separated list selector with unquoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=bookmark],    #attr-whitespace a[rel~=nofollow] 
+PASS Detached Element.querySelectorAll: Attribute whitespace-separated list selector with double-quoted value, not matching value with space: #attr-whitespace a[rel~=&quot;book mark&quot;] 
+PASS Detached Element.querySelector: Attribute whitespace-separated list selector with double-quoted value, not matching value with space: #attr-whitespace a[rel~=&quot;book mark&quot;] 
+PASS Detached Element.querySelectorAll: Attribute whitespace-separated list selector, matching title attribute with value using non-ASCII characters: #attr-whitespace [title~=中文] 
+PASS Detached Element.querySelector: Attribute whitespace-separated list selector, matching title attribute with value using non-ASCII characters: #attr-whitespace [title~=中文] 
+PASS Detached Element.querySelectorAll: Attribute hyphen-separated list selector, not matching unspecified lang attribute: #attr-hyphen-div1[lang|=&quot;en&quot;] 
+PASS Detached Element.querySelector: Attribute hyphen-separated list selector, not matching unspecified lang attribute: #attr-hyphen-div1[lang|=&quot;en&quot;] 
+PASS Detached Element.querySelectorAll: Attribute hyphen-separated list selector, matching lang attribute with exact value: #attr-hyphen-div2[lang|=&quot;fr&quot;] 
+PASS Detached Element.querySelector: Attribute hyphen-separated list selector, matching lang attribute with exact value: #attr-hyphen-div2[lang|=&quot;fr&quot;] 
+PASS Detached Element.querySelectorAll: Attribute hyphen-separated list selector, matching lang attribute with partial value: #attr-hyphen-div3[lang|=&quot;en&quot;] 
+PASS Detached Element.querySelector: Attribute hyphen-separated list selector, matching lang attribute with partial value: #attr-hyphen-div3[lang|=&quot;en&quot;] 
+PASS Detached Element.querySelectorAll: Attribute hyphen-separated list selector, not matching incorrect value: #attr-hyphen-div4[lang|=&quot;es-AR&quot;] 
+PASS Detached Element.querySelector: Attribute hyphen-separated list selector, not matching incorrect value: #attr-hyphen-div4[lang|=&quot;es-AR&quot;] 
+PASS Detached Element.querySelectorAll: Attribute begins with selector, matching href attributes beginning with specified substring: #attr-begins a[href^=&quot;http://www&quot;] 
+PASS Detached Element.querySelector: Attribute begins with selector, matching href attributes beginning with specified substring: #attr-begins a[href^=&quot;http://www&quot;] 
+PASS Detached Element.querySelectorAll: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^=&quot;en-&quot;] 
+PASS Detached Element.querySelector: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^=&quot;en-&quot;] 
+PASS Detached Element.querySelectorAll: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
+PASS Detached Element.querySelector: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
+PASS Detached Element.querySelectorAll: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=' apple'] 
+PASS Detached Element.querySelector: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=' apple'] 
+PASS Detached Element.querySelectorAll: Attribute begins with selector with double-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=&quot; apple&quot;] 
+PASS Detached Element.querySelector: Attribute begins with selector with double-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=&quot; apple&quot;] 
+PASS Detached Element.querySelectorAll: Attribute begins with selector with unquoted value, not matching class attribute not beginning with specified substring: #attr-begins [class^= apple] 
+PASS Detached Element.querySelector: Attribute begins with selector with unquoted value, not matching class attribute not beginning with specified substring: #attr-begins [class^= apple] 
+PASS Detached Element.querySelectorAll: Attribute ends with selector, matching href attributes ending with specified substring: #attr-ends a[href$=&quot;.org&quot;] 
+PASS Detached Element.querySelector: Attribute ends with selector, matching href attributes ending with specified substring: #attr-ends a[href$=&quot;.org&quot;] 
+PASS Detached Element.querySelectorAll: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$=&quot;-CH&quot;] 
+PASS Detached Element.querySelector: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$=&quot;-CH&quot;] 
+PASS Detached Element.querySelectorAll: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
+PASS Detached Element.querySelector: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
+PASS Detached Element.querySelectorAll: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring: #attr-ends [class$='apple '] 
+PASS Detached Element.querySelector: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring: #attr-ends [class$='apple '] 
+PASS Detached Element.querySelectorAll: Attribute ends with selector with double-quoted value, matching class attribute ending with specified substring: #attr-ends [class$=&quot;apple &quot;] 
+PASS Detached Element.querySelector: Attribute ends with selector with double-quoted value, matching class attribute ending with specified substring: #attr-ends [class$=&quot;apple &quot;] 
+PASS Detached Element.querySelectorAll: Attribute ends with selector with unquoted value, not matching class attribute not ending with specified substring: #attr-ends [class$=apple ] 
+PASS Detached Element.querySelector: Attribute ends with selector with unquoted value, not matching class attribute not ending with specified substring: #attr-ends [class$=apple ] 
+PASS Detached Element.querySelectorAll: Attribute contains selector, matching href attributes beginning with specified substring: #attr-contains a[href*=&quot;http://www&quot;] 
+PASS Detached Element.querySelector: Attribute contains selector, matching href attributes beginning with specified substring: #attr-contains a[href*=&quot;http://www&quot;] 
+PASS Detached Element.querySelectorAll: Attribute contains selector, matching href attributes ending with specified substring: #attr-contains a[href*=&quot;.org&quot;] 
+PASS Detached Element.querySelector: Attribute contains selector, matching href attributes ending with specified substring: #attr-contains a[href*=&quot;.org&quot;] 
+PASS Detached Element.querySelectorAll: Attribute contains selector, matching href attributes containing specified substring: #attr-contains a[href*=&quot;.example.&quot;] 
+PASS Detached Element.querySelector: Attribute contains selector, matching href attributes containing specified substring: #attr-contains a[href*=&quot;.example.&quot;] 
+PASS Detached Element.querySelectorAll: Attribute contains selector, matching lang attributes beginning with specified substring, : #attr-contains [lang*=&quot;en-&quot;] 
+PASS Detached Element.querySelector: Attribute contains selector, matching lang attributes beginning with specified substring, : #attr-contains [lang*=&quot;en-&quot;] 
+PASS Detached Element.querySelectorAll: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*=&quot;-CH&quot;] 
+PASS Detached Element.querySelector: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*=&quot;-CH&quot;] 
+PASS Detached Element.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
+PASS Detached Element.querySelector: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
+PASS Detached Element.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring: #attr-contains [class*='orange '] 
+PASS Detached Element.querySelector: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring: #attr-contains [class*='orange '] 
+PASS Detached Element.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute containing specified substring: #attr-contains [class*='ple banana ora'] 
+PASS Detached Element.querySelector: Attribute contains selector with single-quoted value, matching class attribute containing specified substring: #attr-contains [class*='ple banana ora'] 
+PASS Detached Element.querySelectorAll: Attribute contains selector with double-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=&quot; apple&quot;] 
+PASS Detached Element.querySelector: Attribute contains selector with double-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=&quot; apple&quot;] 
+PASS Detached Element.querySelectorAll: Attribute contains selector with double-quoted value, matching class attribute ending with specified substring: #attr-contains [class*=&quot;orange &quot;] 
+PASS Detached Element.querySelector: Attribute contains selector with double-quoted value, matching class attribute ending with specified substring: #attr-contains [class*=&quot;orange &quot;] 
+PASS Detached Element.querySelectorAll: Attribute contains selector with double-quoted value, matching class attribute containing specified substring: #attr-contains [class*=&quot;ple banana ora&quot;] 
+PASS Detached Element.querySelector: Attribute contains selector with double-quoted value, matching class attribute containing specified substring: #attr-contains [class*=&quot;ple banana ora&quot;] 
+PASS Detached Element.querySelectorAll: Attribute contains selector with unquoted value, matching class attribute beginning with specified substring: #attr-contains [class*= apple] 
+PASS Detached Element.querySelector: Attribute contains selector with unquoted value, matching class attribute beginning with specified substring: #attr-contains [class*= apple] 
+PASS Detached Element.querySelectorAll: Attribute contains selector with unquoted value, matching class attribute ending with specified substring: #attr-contains [class*=orange ] 
+PASS Detached Element.querySelector: Attribute contains selector with unquoted value, matching class attribute ending with specified substring: #attr-contains [class*=orange ] 
+PASS Detached Element.querySelectorAll: Attribute contains selector with unquoted value, matching class attribute containing specified substring: #attr-contains [class*= banana ] 
+PASS Detached Element.querySelector: Attribute contains selector with unquoted value, matching class attribute containing specified substring: #attr-contains [class*= banana ] 
+PASS Detached Element.querySelectorAll: :root pseudo-class selector, not matching document root element: :root 
+PASS Detached Element.querySelector: :root pseudo-class selector, not matching document root element: :root 
+PASS Detached Element.querySelectorAll: :nth-child selector, matching the third child element: #pseudo-nth-table1 :nth-child(3) 
+PASS Detached Element.querySelector: :nth-child selector, matching the third child element: #pseudo-nth-table1 :nth-child(3) 
+PASS Detached Element.querySelectorAll: :nth-child selector, matching every third child element: #pseudo-nth li:nth-child(3n) 
+PASS Detached Element.querySelector: :nth-child selector, matching every third child element: #pseudo-nth li:nth-child(3n) 
+PASS Detached Element.querySelectorAll: :nth-child selector, matching every second child element, starting from the fourth: #pseudo-nth li:nth-child(2n+4) 
+PASS Detached Element.querySelector: :nth-child selector, matching every second child element, starting from the fourth: #pseudo-nth li:nth-child(2n+4) 
+PASS Detached Element.querySelectorAll: :nth-child selector, matching every fourth child element, starting from the third: #pseudo-nth-p1 :nth-child(4n-1) 
+PASS Detached Element.querySelector: :nth-child selector, matching every fourth child element, starting from the third: #pseudo-nth-p1 :nth-child(4n-1) 
+PASS Detached Element.querySelectorAll: :nth-last-child selector, matching the third last child element: #pseudo-nth-table1 :nth-last-child(3) 
+PASS Detached Element.querySelector: :nth-last-child selector, matching the third last child element: #pseudo-nth-table1 :nth-last-child(3) 
+PASS Detached Element.querySelectorAll: :nth-last-child selector, matching every third child element from the end: #pseudo-nth li:nth-last-child(3n) 
+PASS Detached Element.querySelector: :nth-last-child selector, matching every third child element from the end: #pseudo-nth li:nth-last-child(3n) 
+PASS Detached Element.querySelectorAll: :nth-last-child selector, matching every second child element from the end, starting from the fourth last: #pseudo-nth li:nth-last-child(2n+4) 
+PASS Detached Element.querySelector: :nth-last-child selector, matching every second child element from the end, starting from the fourth last: #pseudo-nth li:nth-last-child(2n+4) 
+PASS Detached Element.querySelectorAll: :nth-last-child selector, matching every fourth element from the end, starting from the third last: #pseudo-nth-p1 :nth-last-child(4n-1) 
+PASS Detached Element.querySelector: :nth-last-child selector, matching every fourth element from the end, starting from the third last: #pseudo-nth-p1 :nth-last-child(4n-1) 
+PASS Detached Element.querySelectorAll: :nth-of-type selector, matching the third em element: #pseudo-nth-p1 em:nth-of-type(3) 
+PASS Detached Element.querySelector: :nth-of-type selector, matching the third em element: #pseudo-nth-p1 em:nth-of-type(3) 
+PASS Detached Element.querySelectorAll: :nth-of-type selector, matching every second element of their type: #pseudo-nth-p1 :nth-of-type(2n) 
+PASS Detached Element.querySelector: :nth-of-type selector, matching every second element of their type: #pseudo-nth-p1 :nth-of-type(2n) 
+PASS Detached Element.querySelectorAll: :nth-of-type selector, matching every second elemetn of their type, starting from the first: #pseudo-nth-p1 span:nth-of-type(2n-1) 
+PASS Detached Element.querySelector: :nth-of-type selector, matching every second elemetn of their type, starting from the first: #pseudo-nth-p1 span:nth-of-type(2n-1) 
+PASS Detached Element.querySelectorAll: :nth-last-of-type selector, matching the thrid last em element: #pseudo-nth-p1 em:nth-last-of-type(3) 
+PASS Detached Element.querySelector: :nth-last-of-type selector, matching the thrid last em element: #pseudo-nth-p1 em:nth-last-of-type(3) 
+PASS Detached Element.querySelectorAll: :nth-last-of-type selector, matching every second last element of their type: #pseudo-nth-p1 :nth-last-of-type(2n) 
+PASS Detached Element.querySelector: :nth-last-of-type selector, matching every second last element of their type: #pseudo-nth-p1 :nth-last-of-type(2n) 
+PASS Detached Element.querySelectorAll: :nth-last-of-type selector, matching every second last element of their type, starting from the last: #pseudo-nth-p1 span:nth-last-of-type(2n-1) 
+PASS Detached Element.querySelector: :nth-last-of-type selector, matching every second last element of their type, starting from the last: #pseudo-nth-p1 span:nth-last-of-type(2n-1) 
+PASS Detached Element.querySelectorAll: :first-of-type selector, matching the first em element: #pseudo-nth-p1 em:first-of-type 
+PASS Detached Element.querySelector: :first-of-type selector, matching the first em element: #pseudo-nth-p1 em:first-of-type 
+PASS Detached Element.querySelectorAll: :first-of-type selector, matching the first of every type of element: #pseudo-nth-p1 :first-of-type 
+PASS Detached Element.querySelector: :first-of-type selector, matching the first of every type of element: #pseudo-nth-p1 :first-of-type 
+PASS Detached Element.querySelectorAll: :first-of-type selector, matching the first td element in each table row: #pseudo-nth-table1 tr :first-of-type 
+PASS Detached Element.querySelector: :first-of-type selector, matching the first td element in each table row: #pseudo-nth-table1 tr :first-of-type 
+PASS Detached Element.querySelectorAll: :last-of-type selector, matching the last em elemnet: #pseudo-nth-p1 em:last-of-type 
+PASS Detached Element.querySelector: :last-of-type selector, matching the last em elemnet: #pseudo-nth-p1 em:last-of-type 
+PASS Detached Element.querySelectorAll: :last-of-type selector, matching the last of every type of element: #pseudo-nth-p1 :last-of-type 
+PASS Detached Element.querySelector: :last-of-type selector, matching the last of every type of element: #pseudo-nth-p1 :last-of-type 
+PASS Detached Element.querySelectorAll: :last-of-type selector, matching the last td element in each table row: #pseudo-nth-table1 tr :last-of-type 
+PASS Detached Element.querySelector: :last-of-type selector, matching the last td element in each table row: #pseudo-nth-table1 tr :last-of-type 
+PASS Detached Element.querySelectorAll: :first-child pseudo-class selector, matching first child div element: #pseudo-first-child div:first-child 
+PASS Detached Element.querySelector: :first-child pseudo-class selector, matching first child div element: #pseudo-first-child div:first-child 
+PASS Detached Element.querySelectorAll: :first-child pseudo-class selector, doesn't match non-first-child elements: .pseudo-first-child-div2:first-child, .pseudo-first-child-div3:first-child 
+PASS Detached Element.querySelector: :first-child pseudo-class selector, doesn't match non-first-child elements: .pseudo-first-child-div2:first-child, .pseudo-first-child-div3:first-child 
+PASS Detached Element.querySelectorAll: :first-child pseudo-class selector, matching first-child of multiple elements: #pseudo-first-child span:first-child 
+PASS Detached Element.querySelector: :first-child pseudo-class selector, matching first-child of multiple elements: #pseudo-first-child span:first-child 
+PASS Detached Element.querySelectorAll: :last-child pseudo-class selector, matching last child div element: #pseudo-last-child div:last-child 
+PASS Detached Element.querySelector: :last-child pseudo-class selector, matching last child div element: #pseudo-last-child div:last-child 
+PASS Detached Element.querySelectorAll: :last-child pseudo-class selector, doesn't match non-last-child elements: .pseudo-last-child-div1:last-child, .pseudo-last-child-div2:first-child 
+PASS Detached Element.querySelector: :last-child pseudo-class selector, doesn't match non-last-child elements: .pseudo-last-child-div1:last-child, .pseudo-last-child-div2:first-child 
+PASS Detached Element.querySelectorAll: :last-child pseudo-class selector, matching first-child of multiple elements: #pseudo-last-child span:last-child 
+PASS Detached Element.querySelector: :last-child pseudo-class selector, matching first-child of multiple elements: #pseudo-last-child span:last-child 
+PASS Detached Element.querySelectorAll: :pseudo-only-child pseudo-class selector, matching all only-child elements: #pseudo-only :only-child 
+PASS Detached Element.querySelector: :pseudo-only-child pseudo-class selector, matching all only-child elements: #pseudo-only :only-child 
+PASS Detached Element.querySelectorAll: :pseudo-only-child pseudo-class selector, matching only-child em elements: #pseudo-only em:only-child 
+PASS Detached Element.querySelector: :pseudo-only-child pseudo-class selector, matching only-child em elements: #pseudo-only em:only-child 
+PASS Detached Element.querySelectorAll: :pseudo-only-of-type pseudo-class selector, matching all elements with no siblings of the same type: #pseudo-only :only-of-type 
+PASS Detached Element.querySelector: :pseudo-only-of-type pseudo-class selector, matching all elements with no siblings of the same type: #pseudo-only :only-of-type 
+PASS Detached Element.querySelectorAll: :pseudo-only-of-type pseudo-class selector, matching em elements with no siblings of the same type: #pseudo-only em:only-of-type 
+PASS Detached Element.querySelector: :pseudo-only-of-type pseudo-class selector, matching em elements with no siblings of the same type: #pseudo-only em:only-of-type 
+PASS Detached Element.querySelectorAll: :empty pseudo-class selector, matching empty p elements: #pseudo-empty p:empty 
+PASS Detached Element.querySelector: :empty pseudo-class selector, matching empty p elements: #pseudo-empty p:empty 
+PASS Detached Element.querySelectorAll: :empty pseudo-class selector, matching all empty elements: #pseudo-empty :empty 
+PASS Detached Element.querySelector: :empty pseudo-class selector, matching all empty elements: #pseudo-empty :empty 
+PASS Detached Element.querySelectorAll: :link and :visited pseudo-class selectors, matching a and area elements with href attributes: #pseudo-link :link, #pseudo-link :visited 
+PASS Detached Element.querySelector: :link and :visited pseudo-class selectors, matching a and area elements with href attributes: #pseudo-link :link, #pseudo-link :visited 
+PASS Detached Element.querySelectorAll: :link and :visited pseudo-class selectors, not matching link elements with href attributes: #head :link, #head :visited 
+PASS Detached Element.querySelector: :link and :visited pseudo-class selectors, not matching link elements with href attributes: #head :link, #head :visited 
+PASS Detached Element.querySelectorAll: :link and :visited pseudo-class selectors, chained, mutually exclusive pseudo-classes match nothing: :link:visited 
+PASS Detached Element.querySelector: :link and :visited pseudo-class selectors, chained, mutually exclusive pseudo-classes match nothing: :link:visited 
+PASS Detached Element.querySelectorAll: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target 
+PASS Detached Element.querySelector: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target 
+PASS Detached Element.querySelectorAll: :lang pseudo-class selector, not matching element with no inherited language: #pseudo-lang-div1:lang(en) 
+PASS Detached Element.querySelector: :lang pseudo-class selector, not matching element with no inherited language: #pseudo-lang-div1:lang(en) 
+PASS Detached Element.querySelectorAll: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr) 
+PASS Detached Element.querySelector: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr) 
+PASS Detached Element.querySelectorAll: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en) 
+PASS Detached Element.querySelector: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en) 
+PASS Detached Element.querySelectorAll: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR) 
+PASS Detached Element.querySelector: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR) 
+PASS Detached Element.querySelectorAll: :enabled pseudo-class selector, matching all enabled form controls: #pseudo-ui :enabled 
+PASS Detached Element.querySelector: :enabled pseudo-class selector, matching all enabled form controls: #pseudo-ui :enabled 
+PASS Detached Element.querySelectorAll: :enabled pseudo-class selector, matching all disabled form controls: #pseudo-ui :disabled 
+PASS Detached Element.querySelector: :enabled pseudo-class selector, matching all disabled form controls: #pseudo-ui :disabled 
+PASS Detached Element.querySelectorAll: :checked pseudo-class selector, matching checked radio buttons and checkboxes: #pseudo-ui :checked 
+PASS Detached Element.querySelector: :checked pseudo-class selector, matching checked radio buttons and checkboxes: #pseudo-ui :checked 
+PASS Detached Element.querySelectorAll: :not pseudo-class selector, matching : #not&gt;:not(div) 
+PASS Detached Element.querySelector: :not pseudo-class selector, matching : #not&gt;:not(div) 
+PASS Detached Element.querySelectorAll: :not pseudo-class selector, matching : #not * :not(:first-child) 
+PASS Detached Element.querySelector: :not pseudo-class selector, matching : #not * :not(:first-child) 
+PASS Detached Element.querySelectorAll: :not pseudo-class selector, matching nothing: :not(*) 
+PASS Detached Element.querySelector: :not pseudo-class selector, matching nothing: :not(*) 
+PASS Detached Element.querySelectorAll: :not pseudo-class selector, matching nothing: :not(*|*) 
+PASS Detached Element.querySelector: :not pseudo-class selector, matching nothing: :not(*|*) 
+PASS Detached Element.querySelectorAll: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line 
+PASS Detached Element.querySelector: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line 
+PASS Detached Element.querySelectorAll: ::first-line pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-line 
+PASS Detached Element.querySelector: ::first-line pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-line 
+PASS Detached Element.querySelectorAll: :first-letter pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-letter 
+PASS Detached Element.querySelector: :first-letter pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-letter 
+PASS Detached Element.querySelectorAll: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter 
+PASS Detached Element.querySelector: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter 
+PASS Detached Element.querySelectorAll: :before pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:before 
+PASS Detached Element.querySelector: :before pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:before 
+PASS Detached Element.querySelectorAll: ::before pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::before 
+PASS Detached Element.querySelector: ::before pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::before 
+PASS Detached Element.querySelectorAll: :after pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:after 
+PASS Detached Element.querySelector: :after pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:after 
+PASS Detached Element.querySelectorAll: ::after pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::after 
+PASS Detached Element.querySelector: ::after pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::after 
+PASS Detached Element.querySelectorAll: Class selector, matching element with specified class: .class-p 
+PASS Detached Element.querySelector: Class selector, matching element with specified class: .class-p 
+PASS Detached Element.querySelectorAll: Class selector, chained, matching only elements with all specified classes: #class .apple.orange.banana 
+PASS Detached Element.querySelector: Class selector, chained, matching only elements with all specified classes: #class .apple.orange.banana 
+PASS Detached Element.querySelectorAll: Class Selector, chained, with type selector: div.apple.banana.orange 
+PASS Detached Element.querySelector: Class Selector, chained, with type selector: div.apple.banana.orange 
+PASS Detached Element.querySelectorAll: Class selector, matching element with class value using non-ASCII characters (1): .台北Táiběi 
+PASS Detached Element.querySelector: Class selector, matching element with class value using non-ASCII characters (1): .台北Táiběi 
+PASS Detached Element.querySelectorAll: Class selector, matching multiple elements with class value using non-ASCII characters: .台北 
+PASS Detached Element.querySelector: Class selector, matching multiple elements with class value using non-ASCII characters: .台北 
+PASS Detached Element.querySelectorAll: Class selector, chained, matching element with multiple class values using non-ASCII characters (1): .台北Táiběi.台北 
+PASS Detached Element.querySelector: Class selector, chained, matching element with multiple class values using non-ASCII characters (1): .台北Táiběi.台北 
+PASS Detached Element.querySelectorAll: Class selector, matching element with class with escaped character: .foo\:bar 
+PASS Detached Element.querySelector: Class selector, matching element with class with escaped character: .foo\:bar 
+PASS Detached Element.querySelectorAll: Class selector, matching element with class with escaped character: .test\.foo\[5\]bar 
+PASS Detached Element.querySelector: Class selector, matching element with class with escaped character: .test\.foo\[5\]bar 
+PASS Detached Element.querySelectorAll: ID selector, matching element with specified id: #id #id-div1 
+PASS Detached Element.querySelector: ID selector, matching element with specified id: #id #id-div1 
+PASS Detached Element.querySelectorAll: ID selector, chained, matching element with specified id: #id-div1, #id-div1 
+PASS Detached Element.querySelector: ID selector, chained, matching element with specified id: #id-div1, #id-div1 
+PASS Detached Element.querySelectorAll: ID selector, chained, matching element with specified id: #id-div1, #id-div2 
+PASS Detached Element.querySelector: ID selector, chained, matching element with specified id: #id-div1, #id-div2 
+PASS Detached Element.querySelectorAll: ID Selector, chained, with type selector: div#id-div1, div#id-div2 
+PASS Detached Element.querySelector: ID Selector, chained, with type selector: div#id-div1, div#id-div2 
+PASS Detached Element.querySelectorAll: ID selector, not matching non-existent descendant: #id #none 
+PASS Detached Element.querySelector: ID selector, not matching non-existent descendant: #id #none 
+PASS Detached Element.querySelectorAll: ID selector, not matching non-existent ancestor: #none #id-div1 
+PASS Detached Element.querySelector: ID selector, not matching non-existent ancestor: #none #id-div1 
+PASS Detached Element.querySelectorAll: ID selector, matching multiple elements with duplicate id: #id-li-duplicate 
+PASS Detached Element.querySelector: ID selector, matching multiple elements with duplicate id: #id-li-duplicate 
+PASS Detached Element.querySelectorAll: ID selector, matching id value using non-ASCII characters (1): #台北Táiběi 
+PASS Detached Element.querySelector: ID selector, matching id value using non-ASCII characters (1): #台北Táiběi 
+PASS Detached Element.querySelectorAll: ID selector, matching id value using non-ASCII characters (2): #台北 
+PASS Detached Element.querySelector: ID selector, matching id value using non-ASCII characters (2): #台北 
+PASS Detached Element.querySelectorAll: ID selector, matching id values using non-ASCII characters (1): #台北Táiběi, #台北 
+PASS Detached Element.querySelector: ID selector, matching id values using non-ASCII characters (1): #台北Táiběi, #台北 
+PASS Detached Element.querySelectorAll: ID selector, matching element with id with escaped character: #\#foo\:bar 
+PASS Detached Element.querySelector: ID selector, matching element with id with escaped character: #\#foo\:bar 
+PASS Detached Element.querySelectorAll: ID selector, matching element with id with escaped character: #test\.foo\[5\]bar 
+PASS Detached Element.querySelector: ID selector, matching element with id with escaped character: #test\.foo\[5\]bar 
+PASS Detached Element.querySelectorAll: Namespace selector, matching element with any namespace: #any-namespace *|div 
+PASS Detached Element.querySelector: Namespace selector, matching element with any namespace: #any-namespace *|div 
+FAIL Detached Element.querySelectorAll: Namespace selector, matching div elements in no namespace only: #no-namespace |div assert_equals: The method should return the expected number of matches. expected 1 but got 4
+FAIL Detached Element.querySelector: Namespace selector, matching div elements in no namespace only: #no-namespace |div assert_equals: The method should return the first match. expected &quot;no-namespace-div3&quot; but got &quot;no-namespace-div1&quot;
+FAIL Detached Element.querySelectorAll: Namespace selector, matching any elements in no namespace only: #no-namespace |* assert_equals: The method should return the expected number of matches. expected 1 but got 4
+FAIL Detached Element.querySelector: Namespace selector, matching any elements in no namespace only: #no-namespace |* assert_equals: The method should return the first match. expected &quot;no-namespace-div3&quot; but got &quot;no-namespace-div1&quot;
+PASS Detached Element.querySelectorAll: Descendant combinator, matching element that is a descendant of an element with id: #descendant div 
+PASS Detached Element.querySelector: Descendant combinator, matching element that is a descendant of an element with id: #descendant div 
+PASS Detached Element.querySelectorAll: Descendant combinator, matching element with id that is a descendant of an element: div #descendant-div1 
+PASS Detached Element.querySelector: Descendant combinator, matching element with id that is a descendant of an element: div #descendant-div1 
+PASS Detached Element.querySelectorAll: Descendant combinator, matching element with id that is a descendant of an element with id: #descendant #descendant-div2 
+PASS Detached Element.querySelector: Descendant combinator, matching element with id that is a descendant of an element with id: #descendant #descendant-div2 
+PASS Detached Element.querySelectorAll: Descendant combinator, matching element with class that is a descendant of an element with id: #descendant .descendant-div2 
+PASS Detached Element.querySelector: Descendant combinator, matching element with class that is a descendant of an element with id: #descendant .descendant-div2 
+PASS Detached Element.querySelectorAll: Descendant combinator, matching element with class that is a descendant of an element with class: .descendant-div1 .descendant-div3 
+PASS Detached Element.querySelector: Descendant combinator, matching element with class that is a descendant of an element with class: .descendant-div1 .descendant-div3 
+PASS Detached Element.querySelectorAll: Descendant combinator, not matching element with id that is not a descendant of an element with id: #descendant-div1 #descendant-div4 
+PASS Detached Element.querySelector: Descendant combinator, not matching element with id that is not a descendant of an element with id: #descendant-div1 #descendant-div4 
+PASS Detached Element.querySelectorAll: Descendant combinator, whitespace characters: #descendant        
+#descendant-div2 
+PASS Detached Element.querySelector: Descendant combinator, whitespace characters: #descendant        
+#descendant-div2 
+PASS Detached Element.querySelectorAll: Child combinator, matching element that is a child of an element with id: #child&gt;div 
+PASS Detached Element.querySelector: Child combinator, matching element that is a child of an element with id: #child&gt;div 
+PASS Detached Element.querySelectorAll: Child combinator, matching element with id that is a child of an element: div&gt;#child-div1 
+PASS Detached Element.querySelector: Child combinator, matching element with id that is a child of an element: div&gt;#child-div1 
+PASS Detached Element.querySelectorAll: Child combinator, matching element with id that is a child of an element with id: #child&gt;#child-div1 
+PASS Detached Element.querySelector: Child combinator, matching element with id that is a child of an element with id: #child&gt;#child-div1 
+PASS Detached Element.querySelectorAll: Child combinator, matching element with id that is a child of an element with class: #child-div1&gt;.child-div2 
+PASS Detached Element.querySelector: Child combinator, matching element with id that is a child of an element with class: #child-div1&gt;.child-div2 
+PASS Detached Element.querySelectorAll: Child combinator, matching element with class that is a child of an element with class: .child-div1&gt;.child-div2 
+PASS Detached Element.querySelector: Child combinator, matching element with class that is a child of an element with class: .child-div1&gt;.child-div2 
+PASS Detached Element.querySelectorAll: Child combinator, not matching element with id that is not a child of an element with id: #child&gt;#child-div3 
+PASS Detached Element.querySelector: Child combinator, not matching element with id that is not a child of an element with id: #child&gt;#child-div3 
+PASS Detached Element.querySelectorAll: Child combinator, not matching element with id that is not a child of an element with class: #child-div1&gt;.child-div3 
+PASS Detached Element.querySelector: Child combinator, not matching element with id that is not a child of an element with class: #child-div1&gt;.child-div3 
+PASS Detached Element.querySelectorAll: Child combinator, not matching element with class that is not a child of an element with class: .child-div1&gt;.child-div3 
+PASS Detached Element.querySelector: Child combinator, not matching element with class that is not a child of an element with class: .child-div1&gt;.child-div3 
+PASS Detached Element.querySelectorAll: Child combinator, surrounded by whitespace: #child-div1        
+&gt;        
+#child-div2 
+PASS Detached Element.querySelector: Child combinator, surrounded by whitespace: #child-div1        
+&gt;        
+#child-div2 
+PASS Detached Element.querySelectorAll: Child combinator, whitespace after: #child-div1&gt;        
+#child-div2 
+PASS Detached Element.querySelector: Child combinator, whitespace after: #child-div1&gt;        
+#child-div2 
+PASS Detached Element.querySelectorAll: Child combinator, whitespace before: #child-div1        
+&gt;#child-div2 
+PASS Detached Element.querySelector: Child combinator, whitespace before: #child-div1        
+&gt;#child-div2 
+PASS Detached Element.querySelectorAll: Child combinator, no whitespace: #child-div1&gt;#child-div2 
+PASS Detached Element.querySelector: Child combinator, no whitespace: #child-div1&gt;#child-div2 
+PASS Detached Element.querySelectorAll: Adjacent sibling combinator, matching element that is an adjacent sibling of an element with id: #adjacent-div2+div 
+PASS Detached Element.querySelector: Adjacent sibling combinator, matching element that is an adjacent sibling of an element with id: #adjacent-div2+div 
+PASS Detached Element.querySelectorAll: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element: div+#adjacent-div4 
+PASS Detached Element.querySelector: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element: div+#adjacent-div4 
+PASS Detached Element.querySelectorAll: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element with id: #adjacent-div2+#adjacent-div4 
+PASS Detached Element.querySelector: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element with id: #adjacent-div2+#adjacent-div4 
+PASS Detached Element.querySelectorAll: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with id: #adjacent-div2+.adjacent-div4 
+PASS Detached Element.querySelector: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with id: #adjacent-div2+.adjacent-div4 
+PASS Detached Element.querySelectorAll: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with class: .adjacent-div2+.adjacent-div4 
+PASS Detached Element.querySelector: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with class: .adjacent-div2+.adjacent-div4 
+PASS Detached Element.querySelectorAll: Adjacent sibling combinator, matching p element that is an adjacent sibling of a div element: #adjacent div+p 
+PASS Detached Element.querySelector: Adjacent sibling combinator, matching p element that is an adjacent sibling of a div element: #adjacent div+p 
+PASS Detached Element.querySelectorAll: Adjacent sibling combinator, not matching element with id that is not an adjacent sibling of an element with id: #adjacent-div2+#adjacent-p2, #adjacent-div2+#adjacent-div1 
+PASS Detached Element.querySelector: Adjacent sibling combinator, not matching element with id that is not an adjacent sibling of an element with id: #adjacent-div2+#adjacent-p2, #adjacent-div2+#adjacent-div1 
+PASS Detached Element.querySelectorAll: Adjacent sibling combinator, surrounded by whitespace: #adjacent-p2        
++        
+#adjacent-p3 
+PASS Detached Element.querySelector: Adjacent sibling combinator, surrounded by whitespace: #adjacent-p2        
++        
+#adjacent-p3 
+PASS Detached Element.querySelectorAll: Adjacent sibling combinator, whitespace after: #adjacent-p2+        
+#adjacent-p3 
+PASS Detached Element.querySelector: Adjacent sibling combinator, whitespace after: #adjacent-p2+        
+#adjacent-p3 
+PASS Detached Element.querySelectorAll: Adjacent sibling combinator, whitespace before: #adjacent-p2        
++#adjacent-p3 
+PASS Detached Element.querySelector: Adjacent sibling combinator, whitespace before: #adjacent-p2        
++#adjacent-p3 
+PASS Detached Element.querySelectorAll: Adjacent sibling combinator, no whitespace: #adjacent-p2+#adjacent-p3 
+PASS Detached Element.querySelector: Adjacent sibling combinator, no whitespace: #adjacent-p2+#adjacent-p3 
+PASS Detached Element.querySelectorAll: General sibling combinator, matching element that is a sibling of an element with id: #sibling-div2~div 
+PASS Detached Element.querySelector: General sibling combinator, matching element that is a sibling of an element with id: #sibling-div2~div 
+PASS Detached Element.querySelectorAll: General sibling combinator, matching element with id that is a sibling of an element: div~#sibling-div4 
+PASS Detached Element.querySelector: General sibling combinator, matching element with id that is a sibling of an element: div~#sibling-div4 
+PASS Detached Element.querySelectorAll: General sibling combinator, matching element with id that is a sibling of an element with id: #sibling-div2~#sibling-div4 
+PASS Detached Element.querySelector: General sibling combinator, matching element with id that is a sibling of an element with id: #sibling-div2~#sibling-div4 
+PASS Detached Element.querySelectorAll: General sibling combinator, matching element with class that is a sibling of an element with id: #sibling-div2~.sibling-div 
+PASS Detached Element.querySelector: General sibling combinator, matching element with class that is a sibling of an element with id: #sibling-div2~.sibling-div 
+PASS Detached Element.querySelectorAll: General sibling combinator, matching p element that is a sibling of a div element: #sibling div~p 
+PASS Detached Element.querySelector: General sibling combinator, matching p element that is a sibling of a div element: #sibling div~p 
+PASS Detached Element.querySelectorAll: General sibling combinator, not matching element with id that is not a sibling after a p element: #sibling&gt;p~div 
+PASS Detached Element.querySelector: General sibling combinator, not matching element with id that is not a sibling after a p element: #sibling&gt;p~div 
+PASS Detached Element.querySelectorAll: General sibling combinator, not matching element with id that is not a sibling after an element with id: #sibling-div2~#sibling-div3, #sibling-div2~#sibling-div1 
+PASS Detached Element.querySelector: General sibling combinator, not matching element with id that is not a sibling after an element with id: #sibling-div2~#sibling-div3, #sibling-div2~#sibling-div1 
+PASS Detached Element.querySelectorAll: General sibling combinator, surrounded by whitespace: #sibling-p2        
+~        
+#sibling-p3 
+PASS Detached Element.querySelector: General sibling combinator, surrounded by whitespace: #sibling-p2        
+~        
+#sibling-p3 
+PASS Detached Element.querySelectorAll: General sibling combinator, whitespace after: #sibling-p2~        
+#sibling-p3 
+PASS Detached Element.querySelector: General sibling combinator, whitespace after: #sibling-p2~        
+#sibling-p3 
+PASS Detached Element.querySelectorAll: General sibling combinator, whitespace before: #sibling-p2        
+~#sibling-p3 
+PASS Detached Element.querySelector: General sibling combinator, whitespace before: #sibling-p2        
+~#sibling-p3 
+PASS Detached Element.querySelectorAll: General sibling combinator, no whitespace: #sibling-p2~#sibling-p3 
+PASS Detached Element.querySelector: General sibling combinator, no whitespace: #sibling-p2~#sibling-p3 
+PASS Detached Element.querySelectorAll: Syntax, group of selectors separator, surrounded by whitespace: #group em        

+,        

+#group strong 
+PASS Detached Element.querySelector: Syntax, group of selectors separator, surrounded by whitespace: #group em        

+,        

+#group strong 
+PASS Detached Element.querySelectorAll: Syntax, group of selectors separator, whitespace after: #group em,        
+#group strong 
+PASS Detached Element.querySelector: Syntax, group of selectors separator, whitespace after: #group em,        
+#group strong 
+PASS Detached Element.querySelectorAll: Syntax, group of selectors separator, whitespace before: #group em        
+,#group strong 
+PASS Detached Element.querySelector: Syntax, group of selectors separator, whitespace before: #group em        
+,#group strong 
+PASS Detached Element.querySelectorAll: Syntax, group of selectors separator, no whitespace: #group em,#group strong 
+PASS Detached Element.querySelector: Syntax, group of selectors separator, no whitespace: #group em,#group strong 
+PASS Fragment.querySelectorAll: Type selector, matching html element: html 
+PASS Fragment.querySelector: Type selector, matching html element: html 
+PASS Fragment.querySelectorAll: Type selector, matching body element: body 
+PASS Fragment.querySelector: Type selector, matching body element: body 
+PASS Fragment.querySelectorAll: Universal selector, matching all children of element with specified ID: #universal&gt;* 
+PASS Fragment.querySelector: Universal selector, matching all children of element with specified ID: #universal&gt;* 
+PASS Fragment.querySelectorAll: Universal selector, matching all grandchildren of element with specified ID: #universal&gt;*&gt;* 
+PASS Fragment.querySelector: Universal selector, matching all grandchildren of element with specified ID: #universal&gt;*&gt;* 
+PASS Fragment.querySelectorAll: Universal selector, matching all children of empty element with specified ID: #empty&gt;* 
+PASS Fragment.querySelector: Universal selector, matching all children of empty element with specified ID: #empty&gt;* 
+PASS Fragment.querySelectorAll: Universal selector, matching all descendants of element with specified ID: #universal * 
+PASS Fragment.querySelector: Universal selector, matching all descendants of element with specified ID: #universal * 
+PASS Fragment.querySelectorAll: Attribute presence selector, matching align attribute with value: .attr-presence-div1[align] 
+PASS Fragment.querySelector: Attribute presence selector, matching align attribute with value: .attr-presence-div1[align] 
+PASS Fragment.querySelectorAll: Attribute presence selector, matching align attribute with empty value: .attr-presence-div2[align] 
+PASS Fragment.querySelector: Attribute presence selector, matching align attribute with empty value: .attr-presence-div2[align] 
+PASS Fragment.querySelectorAll: Attribute presence selector, matching title attribute, case insensitivity: #attr-presence [TiTlE] 
+PASS Fragment.querySelector: Attribute presence selector, matching title attribute, case insensitivity: #attr-presence [TiTlE] 
+PASS Fragment.querySelectorAll: Attribute presence selector, matching custom data-* attribute: [data-attr-presence] 
+PASS Fragment.querySelector: Attribute presence selector, matching custom data-* attribute: [data-attr-presence] 
+PASS Fragment.querySelectorAll: Attribute presence selector, not matching attribute with similar name: .attr-presence-div3[align], .attr-presence-div4[align] 
+PASS Fragment.querySelector: Attribute presence selector, not matching attribute with similar name: .attr-presence-div3[align], .attr-presence-div4[align] 
+PASS Fragment.querySelectorAll: Attribute presence selector, matching attribute with non-ASCII characters: ul[data-中文] 
+PASS Fragment.querySelector: Attribute presence selector, matching attribute with non-ASCII characters: ul[data-中文] 
+PASS Fragment.querySelectorAll: Attribute presence selector, not matching default option without selected attribute: #attr-presence-select1 option[selected] 
+PASS Fragment.querySelector: Attribute presence selector, not matching default option without selected attribute: #attr-presence-select1 option[selected] 
+PASS Fragment.querySelectorAll: Attribute presence selector, matching option with selected attribute: #attr-presence-select2 option[selected] 
+PASS Fragment.querySelector: Attribute presence selector, matching option with selected attribute: #attr-presence-select2 option[selected] 
+PASS Fragment.querySelectorAll: Attribute presence selector, matching multiple options with selected attributes: #attr-presence-select3 option[selected] 
+PASS Fragment.querySelector: Attribute presence selector, matching multiple options with selected attributes: #attr-presence-select3 option[selected] 
+PASS Fragment.querySelectorAll: Attribute value selector, matching align attribute with value: #attr-value [align=&quot;center&quot;] 
+PASS Fragment.querySelector: Attribute value selector, matching align attribute with value: #attr-value [align=&quot;center&quot;] 
+PASS Fragment.querySelectorAll: Attribute value selector, matching align attribute with empty value: #attr-value [align=&quot;&quot;] 
+PASS Fragment.querySelector: Attribute value selector, matching align attribute with empty value: #attr-value [align=&quot;&quot;] 
+PASS Fragment.querySelectorAll: Attribute value selector, not matching align attribute with partial value: #attr-value [align=&quot;c&quot;] 
+PASS Fragment.querySelector: Attribute value selector, not matching align attribute with partial value: #attr-value [align=&quot;c&quot;] 
+PASS Fragment.querySelectorAll: Attribute value selector, not matching align attribute with incorrect value: #attr-value [align=&quot;centera&quot;] 
+PASS Fragment.querySelector: Attribute value selector, not matching align attribute with incorrect value: #attr-value [align=&quot;centera&quot;] 
+PASS Fragment.querySelectorAll: Attribute value selector, matching custom data-* attribute with unicode escaped value: [data-attr-value=&quot;\e9&quot;] 
+PASS Fragment.querySelector: Attribute value selector, matching custom data-* attribute with unicode escaped value: [data-attr-value=&quot;\e9&quot;] 
+PASS Fragment.querySelectorAll: Attribute value selector, matching custom data-* attribute with escaped character: [data-attr-value_foo=&quot;\e9&quot;] 
+PASS Fragment.querySelector: Attribute value selector, matching custom data-* attribute with escaped character: [data-attr-value_foo=&quot;\e9&quot;] 
+PASS Fragment.querySelectorAll: Attribute value selector with single-quoted value, matching multiple inputs with type attributes: #attr-value input[type='hidden'],#attr-value input[type='radio'] 
+PASS Fragment.querySelector: Attribute value selector with single-quoted value, matching multiple inputs with type attributes: #attr-value input[type='hidden'],#attr-value input[type='radio'] 
+PASS Fragment.querySelectorAll: Attribute value selector with double-quoted value, matching multiple inputs with type attributes: #attr-value input[type=&quot;hidden&quot;],#attr-value input[type='radio'] 
+PASS Fragment.querySelector: Attribute value selector with double-quoted value, matching multiple inputs with type attributes: #attr-value input[type=&quot;hidden&quot;],#attr-value input[type='radio'] 
+PASS Fragment.querySelectorAll: Attribute value selector with unquoted value, matching multiple inputs with type attributes: #attr-value input[type=hidden],#attr-value input[type=radio] 
+PASS Fragment.querySelector: Attribute value selector with unquoted value, matching multiple inputs with type attributes: #attr-value input[type=hidden],#attr-value input[type=radio] 
+PASS Fragment.querySelectorAll: Attribute value selector, matching attribute with value using non-ASCII characters: [data-attr-value=中文] 
+PASS Fragment.querySelector: Attribute value selector, matching attribute with value using non-ASCII characters: [data-attr-value=中文] 
+PASS Fragment.querySelectorAll: Attribute whitespace-separated list selector, matching class attribute with value: #attr-whitespace [class~=&quot;div1&quot;] 
+PASS Fragment.querySelector: Attribute whitespace-separated list selector, matching class attribute with value: #attr-whitespace [class~=&quot;div1&quot;] 
+PASS Fragment.querySelectorAll: Attribute whitespace-separated list selector, not matching class attribute with empty value: #attr-whitespace [class~=&quot;&quot;] 
+PASS Fragment.querySelector: Attribute whitespace-separated list selector, not matching class attribute with empty value: #attr-whitespace [class~=&quot;&quot;] 
+PASS Fragment.querySelectorAll: Attribute whitespace-separated list selector, not matching class attribute with partial value: [data-attr-whitespace~=&quot;div&quot;] 
+PASS Fragment.querySelector: Attribute whitespace-separated list selector, not matching class attribute with partial value: [data-attr-whitespace~=&quot;div&quot;] 
+PASS Fragment.querySelectorAll: Attribute whitespace-separated list selector, matching custom data-* attribute with unicode escaped value: [data-attr-whitespace~=&quot;\0000e9&quot;] 
+PASS Fragment.querySelector: Attribute whitespace-separated list selector, matching custom data-* attribute with unicode escaped value: [data-attr-whitespace~=&quot;\0000e9&quot;] 
+PASS Fragment.querySelectorAll: Attribute whitespace-separated list selector, matching custom data-* attribute with escaped character: [data-attr-whitespace_foo~=&quot;\e9&quot;] 
+PASS Fragment.querySelector: Attribute whitespace-separated list selector, matching custom data-* attribute with escaped character: [data-attr-whitespace_foo~=&quot;\e9&quot;] 
+PASS Fragment.querySelectorAll: Attribute whitespace-separated list selector with single-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~='bookmark'],  #attr-whitespace a[rel~='nofollow'] 
+PASS Fragment.querySelector: Attribute whitespace-separated list selector with single-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~='bookmark'],  #attr-whitespace a[rel~='nofollow'] 
+PASS Fragment.querySelectorAll: Attribute whitespace-separated list selector with double-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=&quot;bookmark&quot;],#attr-whitespace a[rel~='nofollow'] 
+PASS Fragment.querySelector: Attribute whitespace-separated list selector with double-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=&quot;bookmark&quot;],#attr-whitespace a[rel~='nofollow'] 
+PASS Fragment.querySelectorAll: Attribute whitespace-separated list selector with unquoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=bookmark],    #attr-whitespace a[rel~=nofollow] 
+PASS Fragment.querySelector: Attribute whitespace-separated list selector with unquoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=bookmark],    #attr-whitespace a[rel~=nofollow] 
+PASS Fragment.querySelectorAll: Attribute whitespace-separated list selector with double-quoted value, not matching value with space: #attr-whitespace a[rel~=&quot;book mark&quot;] 
+PASS Fragment.querySelector: Attribute whitespace-separated list selector with double-quoted value, not matching value with space: #attr-whitespace a[rel~=&quot;book mark&quot;] 
+PASS Fragment.querySelectorAll: Attribute whitespace-separated list selector, matching title attribute with value using non-ASCII characters: #attr-whitespace [title~=中文] 
+PASS Fragment.querySelector: Attribute whitespace-separated list selector, matching title attribute with value using non-ASCII characters: #attr-whitespace [title~=中文] 
+PASS Fragment.querySelectorAll: Attribute hyphen-separated list selector, not matching unspecified lang attribute: #attr-hyphen-div1[lang|=&quot;en&quot;] 
+PASS Fragment.querySelector: Attribute hyphen-separated list selector, not matching unspecified lang attribute: #attr-hyphen-div1[lang|=&quot;en&quot;] 
+PASS Fragment.querySelectorAll: Attribute hyphen-separated list selector, matching lang attribute with exact value: #attr-hyphen-div2[lang|=&quot;fr&quot;] 
+PASS Fragment.querySelector: Attribute hyphen-separated list selector, matching lang attribute with exact value: #attr-hyphen-div2[lang|=&quot;fr&quot;] 
+PASS Fragment.querySelectorAll: Attribute hyphen-separated list selector, matching lang attribute with partial value: #attr-hyphen-div3[lang|=&quot;en&quot;] 
+PASS Fragment.querySelector: Attribute hyphen-separated list selector, matching lang attribute with partial value: #attr-hyphen-div3[lang|=&quot;en&quot;] 
+PASS Fragment.querySelectorAll: Attribute hyphen-separated list selector, not matching incorrect value: #attr-hyphen-div4[lang|=&quot;es-AR&quot;] 
+PASS Fragment.querySelector: Attribute hyphen-separated list selector, not matching incorrect value: #attr-hyphen-div4[lang|=&quot;es-AR&quot;] 
+PASS Fragment.querySelectorAll: Attribute begins with selector, matching href attributes beginning with specified substring: #attr-begins a[href^=&quot;http://www&quot;] 
+PASS Fragment.querySelector: Attribute begins with selector, matching href attributes beginning with specified substring: #attr-begins a[href^=&quot;http://www&quot;] 
+PASS Fragment.querySelectorAll: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^=&quot;en-&quot;] 
+PASS Fragment.querySelector: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^=&quot;en-&quot;] 
+PASS Fragment.querySelectorAll: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
+PASS Fragment.querySelector: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
+PASS Fragment.querySelectorAll: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=' apple'] 
+PASS Fragment.querySelector: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=' apple'] 
+PASS Fragment.querySelectorAll: Attribute begins with selector with double-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=&quot; apple&quot;] 
+PASS Fragment.querySelector: Attribute begins with selector with double-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=&quot; apple&quot;] 
+PASS Fragment.querySelectorAll: Attribute begins with selector with unquoted value, not matching class attribute not beginning with specified substring: #attr-begins [class^= apple] 
+PASS Fragment.querySelector: Attribute begins with selector with unquoted value, not matching class attribute not beginning with specified substring: #attr-begins [class^= apple] 
+PASS Fragment.querySelectorAll: Attribute ends with selector, matching href attributes ending with specified substring: #attr-ends a[href$=&quot;.org&quot;] 
+PASS Fragment.querySelector: Attribute ends with selector, matching href attributes ending with specified substring: #attr-ends a[href$=&quot;.org&quot;] 
+PASS Fragment.querySelectorAll: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$=&quot;-CH&quot;] 
+PASS Fragment.querySelector: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$=&quot;-CH&quot;] 
+PASS Fragment.querySelectorAll: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
+PASS Fragment.querySelector: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
+PASS Fragment.querySelectorAll: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring: #attr-ends [class$='apple '] 
+PASS Fragment.querySelector: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring: #attr-ends [class$='apple '] 
+PASS Fragment.querySelectorAll: Attribute ends with selector with double-quoted value, matching class attribute ending with specified substring: #attr-ends [class$=&quot;apple &quot;] 
+PASS Fragment.querySelector: Attribute ends with selector with double-quoted value, matching class attribute ending with specified substring: #attr-ends [class$=&quot;apple &quot;] 
+PASS Fragment.querySelectorAll: Attribute ends with selector with unquoted value, not matching class attribute not ending with specified substring: #attr-ends [class$=apple ] 
+PASS Fragment.querySelector: Attribute ends with selector with unquoted value, not matching class attribute not ending with specified substring: #attr-ends [class$=apple ] 
+PASS Fragment.querySelectorAll: Attribute contains selector, matching href attributes beginning with specified substring: #attr-contains a[href*=&quot;http://www&quot;] 
+PASS Fragment.querySelector: Attribute contains selector, matching href attributes beginning with specified substring: #attr-contains a[href*=&quot;http://www&quot;] 
+PASS Fragment.querySelectorAll: Attribute contains selector, matching href attributes ending with specified substring: #attr-contains a[href*=&quot;.org&quot;] 
+PASS Fragment.querySelector: Attribute contains selector, matching href attributes ending with specified substring: #attr-contains a[href*=&quot;.org&quot;] 
+PASS Fragment.querySelectorAll: Attribute contains selector, matching href attributes containing specified substring: #attr-contains a[href*=&quot;.example.&quot;] 
+PASS Fragment.querySelector: Attribute contains selector, matching href attributes containing specified substring: #attr-contains a[href*=&quot;.example.&quot;] 
+PASS Fragment.querySelectorAll: Attribute contains selector, matching lang attributes beginning with specified substring, : #attr-contains [lang*=&quot;en-&quot;] 
+PASS Fragment.querySelector: Attribute contains selector, matching lang attributes beginning with specified substring, : #attr-contains [lang*=&quot;en-&quot;] 
+PASS Fragment.querySelectorAll: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*=&quot;-CH&quot;] 
+PASS Fragment.querySelector: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*=&quot;-CH&quot;] 
+PASS Fragment.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
+PASS Fragment.querySelector: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
+PASS Fragment.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring: #attr-contains [class*='orange '] 
+PASS Fragment.querySelector: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring: #attr-contains [class*='orange '] 
+PASS Fragment.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute containing specified substring: #attr-contains [class*='ple banana ora'] 
+PASS Fragment.querySelector: Attribute contains selector with single-quoted value, matching class attribute containing specified substring: #attr-contains [class*='ple banana ora'] 
+PASS Fragment.querySelectorAll: Attribute contains selector with double-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=&quot; apple&quot;] 
+PASS Fragment.querySelector: Attribute contains selector with double-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=&quot; apple&quot;] 
+PASS Fragment.querySelectorAll: Attribute contains selector with double-quoted value, matching class attribute ending with specified substring: #attr-contains [class*=&quot;orange &quot;] 
+PASS Fragment.querySelector: Attribute contains selector with double-quoted value, matching class attribute ending with specified substring: #attr-contains [class*=&quot;orange &quot;] 
+PASS Fragment.querySelectorAll: Attribute contains selector with double-quoted value, matching class attribute containing specified substring: #attr-contains [class*=&quot;ple banana ora&quot;] 
+PASS Fragment.querySelector: Attribute contains selector with double-quoted value, matching class attribute containing specified substring: #attr-contains [class*=&quot;ple banana ora&quot;] 
+PASS Fragment.querySelectorAll: Attribute contains selector with unquoted value, matching class attribute beginning with specified substring: #attr-contains [class*= apple] 
+PASS Fragment.querySelector: Attribute contains selector with unquoted value, matching class attribute beginning with specified substring: #attr-contains [class*= apple] 
+PASS Fragment.querySelectorAll: Attribute contains selector with unquoted value, matching class attribute ending with specified substring: #attr-contains [class*=orange ] 
+PASS Fragment.querySelector: Attribute contains selector with unquoted value, matching class attribute ending with specified substring: #attr-contains [class*=orange ] 
+PASS Fragment.querySelectorAll: Attribute contains selector with unquoted value, matching class attribute containing specified substring: #attr-contains [class*= banana ] 
+PASS Fragment.querySelector: Attribute contains selector with unquoted value, matching class attribute containing specified substring: #attr-contains [class*= banana ] 
+PASS Fragment.querySelectorAll: :root pseudo-class selector, not matching document root element: :root 
+PASS Fragment.querySelector: :root pseudo-class selector, not matching document root element: :root 
+PASS Fragment.querySelectorAll: :nth-child selector, matching the third child element: #pseudo-nth-table1 :nth-child(3) 
+PASS Fragment.querySelector: :nth-child selector, matching the third child element: #pseudo-nth-table1 :nth-child(3) 
+PASS Fragment.querySelectorAll: :nth-child selector, matching every third child element: #pseudo-nth li:nth-child(3n) 
+PASS Fragment.querySelector: :nth-child selector, matching every third child element: #pseudo-nth li:nth-child(3n) 
+PASS Fragment.querySelectorAll: :nth-child selector, matching every second child element, starting from the fourth: #pseudo-nth li:nth-child(2n+4) 
+PASS Fragment.querySelector: :nth-child selector, matching every second child element, starting from the fourth: #pseudo-nth li:nth-child(2n+4) 
+PASS Fragment.querySelectorAll: :nth-child selector, matching every fourth child element, starting from the third: #pseudo-nth-p1 :nth-child(4n-1) 
+PASS Fragment.querySelector: :nth-child selector, matching every fourth child element, starting from the third: #pseudo-nth-p1 :nth-child(4n-1) 
+PASS Fragment.querySelectorAll: :nth-last-child selector, matching the third last child element: #pseudo-nth-table1 :nth-last-child(3) 
+PASS Fragment.querySelector: :nth-last-child selector, matching the third last child element: #pseudo-nth-table1 :nth-last-child(3) 
+PASS Fragment.querySelectorAll: :nth-last-child selector, matching every third child element from the end: #pseudo-nth li:nth-last-child(3n) 
+PASS Fragment.querySelector: :nth-last-child selector, matching every third child element from the end: #pseudo-nth li:nth-last-child(3n) 
+PASS Fragment.querySelectorAll: :nth-last-child selector, matching every second child element from the end, starting from the fourth last: #pseudo-nth li:nth-last-child(2n+4) 
+PASS Fragment.querySelector: :nth-last-child selector, matching every second child element from the end, starting from the fourth last: #pseudo-nth li:nth-last-child(2n+4) 
+PASS Fragment.querySelectorAll: :nth-last-child selector, matching every fourth element from the end, starting from the third last: #pseudo-nth-p1 :nth-last-child(4n-1) 
+PASS Fragment.querySelector: :nth-last-child selector, matching every fourth element from the end, starting from the third last: #pseudo-nth-p1 :nth-last-child(4n-1) 
+PASS Fragment.querySelectorAll: :nth-of-type selector, matching the third em element: #pseudo-nth-p1 em:nth-of-type(3) 
+PASS Fragment.querySelector: :nth-of-type selector, matching the third em element: #pseudo-nth-p1 em:nth-of-type(3) 
+PASS Fragment.querySelectorAll: :nth-of-type selector, matching every second element of their type: #pseudo-nth-p1 :nth-of-type(2n) 
+PASS Fragment.querySelector: :nth-of-type selector, matching every second element of their type: #pseudo-nth-p1 :nth-of-type(2n) 
+PASS Fragment.querySelectorAll: :nth-of-type selector, matching every second elemetn of their type, starting from the first: #pseudo-nth-p1 span:nth-of-type(2n-1) 
+PASS Fragment.querySelector: :nth-of-type selector, matching every second elemetn of their type, starting from the first: #pseudo-nth-p1 span:nth-of-type(2n-1) 
+PASS Fragment.querySelectorAll: :nth-last-of-type selector, matching the thrid last em element: #pseudo-nth-p1 em:nth-last-of-type(3) 
+PASS Fragment.querySelector: :nth-last-of-type selector, matching the thrid last em element: #pseudo-nth-p1 em:nth-last-of-type(3) 
+PASS Fragment.querySelectorAll: :nth-last-of-type selector, matching every second last element of their type: #pseudo-nth-p1 :nth-last-of-type(2n) 
+PASS Fragment.querySelector: :nth-last-of-type selector, matching every second last element of their type: #pseudo-nth-p1 :nth-last-of-type(2n) 
+PASS Fragment.querySelectorAll: :nth-last-of-type selector, matching every second last element of their type, starting from the last: #pseudo-nth-p1 span:nth-last-of-type(2n-1) 
+PASS Fragment.querySelector: :nth-last-of-type selector, matching every second last element of their type, starting from the last: #pseudo-nth-p1 span:nth-last-of-type(2n-1) 
+PASS Fragment.querySelectorAll: :first-of-type selector, matching the first em element: #pseudo-nth-p1 em:first-of-type 
+PASS Fragment.querySelector: :first-of-type selector, matching the first em element: #pseudo-nth-p1 em:first-of-type 
+PASS Fragment.querySelectorAll: :first-of-type selector, matching the first of every type of element: #pseudo-nth-p1 :first-of-type 
+PASS Fragment.querySelector: :first-of-type selector, matching the first of every type of element: #pseudo-nth-p1 :first-of-type 
+PASS Fragment.querySelectorAll: :first-of-type selector, matching the first td element in each table row: #pseudo-nth-table1 tr :first-of-type 
+PASS Fragment.querySelector: :first-of-type selector, matching the first td element in each table row: #pseudo-nth-table1 tr :first-of-type 
+PASS Fragment.querySelectorAll: :last-of-type selector, matching the last em elemnet: #pseudo-nth-p1 em:last-of-type 
+PASS Fragment.querySelector: :last-of-type selector, matching the last em elemnet: #pseudo-nth-p1 em:last-of-type 
+PASS Fragment.querySelectorAll: :last-of-type selector, matching the last of every type of element: #pseudo-nth-p1 :last-of-type 
+PASS Fragment.querySelector: :last-of-type selector, matching the last of every type of element: #pseudo-nth-p1 :last-of-type 
+PASS Fragment.querySelectorAll: :last-of-type selector, matching the last td element in each table row: #pseudo-nth-table1 tr :last-of-type 
+PASS Fragment.querySelector: :last-of-type selector, matching the last td element in each table row: #pseudo-nth-table1 tr :last-of-type 
+PASS Fragment.querySelectorAll: :first-child pseudo-class selector, matching first child div element: #pseudo-first-child div:first-child 
+PASS Fragment.querySelector: :first-child pseudo-class selector, matching first child div element: #pseudo-first-child div:first-child 
+PASS Fragment.querySelectorAll: :first-child pseudo-class selector, doesn't match non-first-child elements: .pseudo-first-child-div2:first-child, .pseudo-first-child-div3:first-child 
+PASS Fragment.querySelector: :first-child pseudo-class selector, doesn't match non-first-child elements: .pseudo-first-child-div2:first-child, .pseudo-first-child-div3:first-child 
+PASS Fragment.querySelectorAll: :first-child pseudo-class selector, matching first-child of multiple elements: #pseudo-first-child span:first-child 
+PASS Fragment.querySelector: :first-child pseudo-class selector, matching first-child of multiple elements: #pseudo-first-child span:first-child 
+PASS Fragment.querySelectorAll: :last-child pseudo-class selector, matching last child div element: #pseudo-last-child div:last-child 
+PASS Fragment.querySelector: :last-child pseudo-class selector, matching last child div element: #pseudo-last-child div:last-child 
+PASS Fragment.querySelectorAll: :last-child pseudo-class selector, doesn't match non-last-child elements: .pseudo-last-child-div1:last-child, .pseudo-last-child-div2:first-child 
+PASS Fragment.querySelector: :last-child pseudo-class selector, doesn't match non-last-child elements: .pseudo-last-child-div1:last-child, .pseudo-last-child-div2:first-child 
+PASS Fragment.querySelectorAll: :last-child pseudo-class selector, matching first-child of multiple elements: #pseudo-last-child span:last-child 
+PASS Fragment.querySelector: :last-child pseudo-class selector, matching first-child of multiple elements: #pseudo-last-child span:last-child 
+PASS Fragment.querySelectorAll: :pseudo-only-child pseudo-class selector, matching all only-child elements: #pseudo-only :only-child 
+PASS Fragment.querySelector: :pseudo-only-child pseudo-class selector, matching all only-child elements: #pseudo-only :only-child 
+PASS Fragment.querySelectorAll: :pseudo-only-child pseudo-class selector, matching only-child em elements: #pseudo-only em:only-child 
+PASS Fragment.querySelector: :pseudo-only-child pseudo-class selector, matching only-child em elements: #pseudo-only em:only-child 
+PASS Fragment.querySelectorAll: :pseudo-only-of-type pseudo-class selector, matching all elements with no siblings of the same type: #pseudo-only :only-of-type 
+PASS Fragment.querySelector: :pseudo-only-of-type pseudo-class selector, matching all elements with no siblings of the same type: #pseudo-only :only-of-type 
+PASS Fragment.querySelectorAll: :pseudo-only-of-type pseudo-class selector, matching em elements with no siblings of the same type: #pseudo-only em:only-of-type 
+PASS Fragment.querySelector: :pseudo-only-of-type pseudo-class selector, matching em elements with no siblings of the same type: #pseudo-only em:only-of-type 
+PASS Fragment.querySelectorAll: :empty pseudo-class selector, matching empty p elements: #pseudo-empty p:empty 
+PASS Fragment.querySelector: :empty pseudo-class selector, matching empty p elements: #pseudo-empty p:empty 
+PASS Fragment.querySelectorAll: :empty pseudo-class selector, matching all empty elements: #pseudo-empty :empty 
+PASS Fragment.querySelector: :empty pseudo-class selector, matching all empty elements: #pseudo-empty :empty 
+PASS Fragment.querySelectorAll: :link and :visited pseudo-class selectors, matching a and area elements with href attributes: #pseudo-link :link, #pseudo-link :visited 
+PASS Fragment.querySelector: :link and :visited pseudo-class selectors, matching a and area elements with href attributes: #pseudo-link :link, #pseudo-link :visited 
+PASS Fragment.querySelectorAll: :link and :visited pseudo-class selectors, not matching link elements with href attributes: #head :link, #head :visited 
+PASS Fragment.querySelector: :link and :visited pseudo-class selectors, not matching link elements with href attributes: #head :link, #head :visited 
+PASS Fragment.querySelectorAll: :link and :visited pseudo-class selectors, chained, mutually exclusive pseudo-classes match nothing: :link:visited 
+PASS Fragment.querySelector: :link and :visited pseudo-class selectors, chained, mutually exclusive pseudo-classes match nothing: :link:visited 
+PASS Fragment.querySelectorAll: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target 
+PASS Fragment.querySelector: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target 
+PASS Fragment.querySelectorAll: :lang pseudo-class selector, not matching element with no inherited language: #pseudo-lang-div1:lang(en) 
+PASS Fragment.querySelector: :lang pseudo-class selector, not matching element with no inherited language: #pseudo-lang-div1:lang(en) 
+PASS Fragment.querySelectorAll: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr) 
+PASS Fragment.querySelector: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr) 
+PASS Fragment.querySelectorAll: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en) 
+PASS Fragment.querySelector: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en) 
+PASS Fragment.querySelectorAll: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR) 
+PASS Fragment.querySelector: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR) 
+PASS Fragment.querySelectorAll: :enabled pseudo-class selector, matching all enabled form controls: #pseudo-ui :enabled 
+PASS Fragment.querySelector: :enabled pseudo-class selector, matching all enabled form controls: #pseudo-ui :enabled 
+PASS Fragment.querySelectorAll: :enabled pseudo-class selector, matching all disabled form controls: #pseudo-ui :disabled 
+PASS Fragment.querySelector: :enabled pseudo-class selector, matching all disabled form controls: #pseudo-ui :disabled 
+PASS Fragment.querySelectorAll: :checked pseudo-class selector, matching checked radio buttons and checkboxes: #pseudo-ui :checked 
+PASS Fragment.querySelector: :checked pseudo-class selector, matching checked radio buttons and checkboxes: #pseudo-ui :checked 
+PASS Fragment.querySelectorAll: :not pseudo-class selector, matching : #not&gt;:not(div) 
+PASS Fragment.querySelector: :not pseudo-class selector, matching : #not&gt;:not(div) 
+PASS Fragment.querySelectorAll: :not pseudo-class selector, matching : #not * :not(:first-child) 
+PASS Fragment.querySelector: :not pseudo-class selector, matching : #not * :not(:first-child) 
+PASS Fragment.querySelectorAll: :not pseudo-class selector, matching nothing: :not(*) 
+PASS Fragment.querySelector: :not pseudo-class selector, matching nothing: :not(*) 
+PASS Fragment.querySelectorAll: :not pseudo-class selector, matching nothing: :not(*|*) 
+PASS Fragment.querySelector: :not pseudo-class selector, matching nothing: :not(*|*) 
+PASS Fragment.querySelectorAll: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line 
+PASS Fragment.querySelector: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line 
+PASS Fragment.querySelectorAll: ::first-line pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-line 
+PASS Fragment.querySelector: ::first-line pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-line 
+PASS Fragment.querySelectorAll: :first-letter pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-letter 
+PASS Fragment.querySelector: :first-letter pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-letter 
+PASS Fragment.querySelectorAll: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter 
+PASS Fragment.querySelector: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter 
+PASS Fragment.querySelectorAll: :before pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:before 
+PASS Fragment.querySelector: :before pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:before 
+PASS Fragment.querySelectorAll: ::before pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::before 
+PASS Fragment.querySelector: ::before pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::before 
+PASS Fragment.querySelectorAll: :after pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:after 
+PASS Fragment.querySelector: :after pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:after 
+PASS Fragment.querySelectorAll: ::after pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::after 
+PASS Fragment.querySelector: ::after pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::after 
+PASS Fragment.querySelectorAll: Class selector, matching element with specified class: .class-p 
+PASS Fragment.querySelector: Class selector, matching element with specified class: .class-p 
+PASS Fragment.querySelectorAll: Class selector, chained, matching only elements with all specified classes: #class .apple.orange.banana 
+PASS Fragment.querySelector: Class selector, chained, matching only elements with all specified classes: #class .apple.orange.banana 
+PASS Fragment.querySelectorAll: Class Selector, chained, with type selector: div.apple.banana.orange 
+PASS Fragment.querySelector: Class Selector, chained, with type selector: div.apple.banana.orange 
+PASS Fragment.querySelectorAll: Class selector, matching element with class value using non-ASCII characters (1): .台北Táiběi 
+PASS Fragment.querySelector: Class selector, matching element with class value using non-ASCII characters (1): .台北Táiběi 
+PASS Fragment.querySelectorAll: Class selector, matching multiple elements with class value using non-ASCII characters: .台北 
+PASS Fragment.querySelector: Class selector, matching multiple elements with class value using non-ASCII characters: .台北 
+PASS Fragment.querySelectorAll: Class selector, chained, matching element with multiple class values using non-ASCII characters (1): .台北Táiběi.台北 
+PASS Fragment.querySelector: Class selector, chained, matching element with multiple class values using non-ASCII characters (1): .台北Táiběi.台北 
+PASS Fragment.querySelectorAll: Class selector, matching element with class with escaped character: .foo\:bar 
+PASS Fragment.querySelector: Class selector, matching element with class with escaped character: .foo\:bar 
+PASS Fragment.querySelectorAll: Class selector, matching element with class with escaped character: .test\.foo\[5\]bar 
+PASS Fragment.querySelector: Class selector, matching element with class with escaped character: .test\.foo\[5\]bar 
+PASS Fragment.querySelectorAll: ID selector, matching element with specified id: #id #id-div1 
+PASS Fragment.querySelector: ID selector, matching element with specified id: #id #id-div1 
+PASS Fragment.querySelectorAll: ID selector, chained, matching element with specified id: #id-div1, #id-div1 
+PASS Fragment.querySelector: ID selector, chained, matching element with specified id: #id-div1, #id-div1 
+PASS Fragment.querySelectorAll: ID selector, chained, matching element with specified id: #id-div1, #id-div2 
+PASS Fragment.querySelector: ID selector, chained, matching element with specified id: #id-div1, #id-div2 
+PASS Fragment.querySelectorAll: ID Selector, chained, with type selector: div#id-div1, div#id-div2 
+PASS Fragment.querySelector: ID Selector, chained, with type selector: div#id-div1, div#id-div2 
+PASS Fragment.querySelectorAll: ID selector, not matching non-existent descendant: #id #none 
+PASS Fragment.querySelector: ID selector, not matching non-existent descendant: #id #none 
+PASS Fragment.querySelectorAll: ID selector, not matching non-existent ancestor: #none #id-div1 
+PASS Fragment.querySelector: ID selector, not matching non-existent ancestor: #none #id-div1 
+PASS Fragment.querySelectorAll: ID selector, matching multiple elements with duplicate id: #id-li-duplicate 
+PASS Fragment.querySelector: ID selector, matching multiple elements with duplicate id: #id-li-duplicate 
+PASS Fragment.querySelectorAll: ID selector, matching id value using non-ASCII characters (1): #台北Táiběi 
+PASS Fragment.querySelector: ID selector, matching id value using non-ASCII characters (1): #台北Táiběi 
+PASS Fragment.querySelectorAll: ID selector, matching id value using non-ASCII characters (2): #台北 
+PASS Fragment.querySelector: ID selector, matching id value using non-ASCII characters (2): #台北 
+PASS Fragment.querySelectorAll: ID selector, matching id values using non-ASCII characters (1): #台北Táiběi, #台北 
+PASS Fragment.querySelector: ID selector, matching id values using non-ASCII characters (1): #台北Táiběi, #台北 
+PASS Fragment.querySelectorAll: ID selector, matching element with id with escaped character: #\#foo\:bar 
+PASS Fragment.querySelector: ID selector, matching element with id with escaped character: #\#foo\:bar 
+PASS Fragment.querySelectorAll: ID selector, matching element with id with escaped character: #test\.foo\[5\]bar 
+PASS Fragment.querySelector: ID selector, matching element with id with escaped character: #test\.foo\[5\]bar 
+PASS Fragment.querySelectorAll: Namespace selector, matching element with any namespace: #any-namespace *|div 
+PASS Fragment.querySelector: Namespace selector, matching element with any namespace: #any-namespace *|div 
+FAIL Fragment.querySelectorAll: Namespace selector, matching div elements in no namespace only: #no-namespace |div assert_equals: The method should return the expected number of matches. expected 1 but got 4
+FAIL Fragment.querySelector: Namespace selector, matching div elements in no namespace only: #no-namespace |div assert_equals: The method should return the first match. expected &quot;no-namespace-div3&quot; but got &quot;no-namespace-div1&quot;
+FAIL Fragment.querySelectorAll: Namespace selector, matching any elements in no namespace only: #no-namespace |* assert_equals: The method should return the expected number of matches. expected 1 but got 4
+FAIL Fragment.querySelector: Namespace selector, matching any elements in no namespace only: #no-namespace |* assert_equals: The method should return the first match. expected &quot;no-namespace-div3&quot; but got &quot;no-namespace-div1&quot;
+PASS Fragment.querySelectorAll: Descendant combinator, matching element that is a descendant of an element with id: #descendant div 
+PASS Fragment.querySelector: Descendant combinator, matching element that is a descendant of an element with id: #descendant div 
+PASS Fragment.querySelectorAll: Descendant combinator, matching element with id that is a descendant of an element: div #descendant-div1 
+PASS Fragment.querySelector: Descendant combinator, matching element with id that is a descendant of an element: div #descendant-div1 
+PASS Fragment.querySelectorAll: Descendant combinator, matching element with id that is a descendant of an element with id: #descendant #descendant-div2 
+PASS Fragment.querySelector: Descendant combinator, matching element with id that is a descendant of an element with id: #descendant #descendant-div2 
+PASS Fragment.querySelectorAll: Descendant combinator, matching element with class that is a descendant of an element with id: #descendant .descendant-div2 
+PASS Fragment.querySelector: Descendant combinator, matching element with class that is a descendant of an element with id: #descendant .descendant-div2 
+PASS Fragment.querySelectorAll: Descendant combinator, matching element with class that is a descendant of an element with class: .descendant-div1 .descendant-div3 
+PASS Fragment.querySelector: Descendant combinator, matching element with class that is a descendant of an element with class: .descendant-div1 .descendant-div3 
+PASS Fragment.querySelectorAll: Descendant combinator, not matching element with id that is not a descendant of an element with id: #descendant-div1 #descendant-div4 
+PASS Fragment.querySelector: Descendant combinator, not matching element with id that is not a descendant of an element with id: #descendant-div1 #descendant-div4 
+PASS Fragment.querySelectorAll: Descendant combinator, whitespace characters: #descendant        
+#descendant-div2 
+PASS Fragment.querySelector: Descendant combinator, whitespace characters: #descendant        
+#descendant-div2 
+PASS Fragment.querySelectorAll: Child combinator, matching element that is a child of an element with id: #child&gt;div 
+PASS Fragment.querySelector: Child combinator, matching element that is a child of an element with id: #child&gt;div 
+PASS Fragment.querySelectorAll: Child combinator, matching element with id that is a child of an element: div&gt;#child-div1 
+PASS Fragment.querySelector: Child combinator, matching element with id that is a child of an element: div&gt;#child-div1 
+PASS Fragment.querySelectorAll: Child combinator, matching element with id that is a child of an element with id: #child&gt;#child-div1 
+PASS Fragment.querySelector: Child combinator, matching element with id that is a child of an element with id: #child&gt;#child-div1 
+PASS Fragment.querySelectorAll: Child combinator, matching element with id that is a child of an element with class: #child-div1&gt;.child-div2 
+PASS Fragment.querySelector: Child combinator, matching element with id that is a child of an element with class: #child-div1&gt;.child-div2 
+PASS Fragment.querySelectorAll: Child combinator, matching element with class that is a child of an element with class: .child-div1&gt;.child-div2 
+PASS Fragment.querySelector: Child combinator, matching element with class that is a child of an element with class: .child-div1&gt;.child-div2 
+PASS Fragment.querySelectorAll: Child combinator, not matching element with id that is not a child of an element with id: #child&gt;#child-div3 
+PASS Fragment.querySelector: Child combinator, not matching element with id that is not a child of an element with id: #child&gt;#child-div3 
+PASS Fragment.querySelectorAll: Child combinator, not matching element with id that is not a child of an element with class: #child-div1&gt;.child-div3 
+PASS Fragment.querySelector: Child combinator, not matching element with id that is not a child of an element with class: #child-div1&gt;.child-div3 
+PASS Fragment.querySelectorAll: Child combinator, not matching element with class that is not a child of an element with class: .child-div1&gt;.child-div3 
+PASS Fragment.querySelector: Child combinator, not matching element with class that is not a child of an element with class: .child-div1&gt;.child-div3 
+PASS Fragment.querySelectorAll: Child combinator, surrounded by whitespace: #child-div1        
+&gt;        
+#child-div2 
+PASS Fragment.querySelector: Child combinator, surrounded by whitespace: #child-div1        
+&gt;        
+#child-div2 
+PASS Fragment.querySelectorAll: Child combinator, whitespace after: #child-div1&gt;        
+#child-div2 
+PASS Fragment.querySelector: Child combinator, whitespace after: #child-div1&gt;        
+#child-div2 
+PASS Fragment.querySelectorAll: Child combinator, whitespace before: #child-div1        
+&gt;#child-div2 
+PASS Fragment.querySelector: Child combinator, whitespace before: #child-div1        
+&gt;#child-div2 
+PASS Fragment.querySelectorAll: Child combinator, no whitespace: #child-div1&gt;#child-div2 
+PASS Fragment.querySelector: Child combinator, no whitespace: #child-div1&gt;#child-div2 
+PASS Fragment.querySelectorAll: Adjacent sibling combinator, matching element that is an adjacent sibling of an element with id: #adjacent-div2+div 
+PASS Fragment.querySelector: Adjacent sibling combinator, matching element that is an adjacent sibling of an element with id: #adjacent-div2+div 
+PASS Fragment.querySelectorAll: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element: div+#adjacent-div4 
+PASS Fragment.querySelector: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element: div+#adjacent-div4 
+PASS Fragment.querySelectorAll: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element with id: #adjacent-div2+#adjacent-div4 
+PASS Fragment.querySelector: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element with id: #adjacent-div2+#adjacent-div4 
+PASS Fragment.querySelectorAll: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with id: #adjacent-div2+.adjacent-div4 
+PASS Fragment.querySelector: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with id: #adjacent-div2+.adjacent-div4 
+PASS Fragment.querySelectorAll: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with class: .adjacent-div2+.adjacent-div4 
+PASS Fragment.querySelector: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with class: .adjacent-div2+.adjacent-div4 
+PASS Fragment.querySelectorAll: Adjacent sibling combinator, matching p element that is an adjacent sibling of a div element: #adjacent div+p 
+PASS Fragment.querySelector: Adjacent sibling combinator, matching p element that is an adjacent sibling of a div element: #adjacent div+p 
+PASS Fragment.querySelectorAll: Adjacent sibling combinator, not matching element with id that is not an adjacent sibling of an element with id: #adjacent-div2+#adjacent-p2, #adjacent-div2+#adjacent-div1 
+PASS Fragment.querySelector: Adjacent sibling combinator, not matching element with id that is not an adjacent sibling of an element with id: #adjacent-div2+#adjacent-p2, #adjacent-div2+#adjacent-div1 
+PASS Fragment.querySelectorAll: Adjacent sibling combinator, surrounded by whitespace: #adjacent-p2        
++        
+#adjacent-p3 
+PASS Fragment.querySelector: Adjacent sibling combinator, surrounded by whitespace: #adjacent-p2        
++        
+#adjacent-p3 
+PASS Fragment.querySelectorAll: Adjacent sibling combinator, whitespace after: #adjacent-p2+        
+#adjacent-p3 
+PASS Fragment.querySelector: Adjacent sibling combinator, whitespace after: #adjacent-p2+        
+#adjacent-p3 
+PASS Fragment.querySelectorAll: Adjacent sibling combinator, whitespace before: #adjacent-p2        
++#adjacent-p3 
+PASS Fragment.querySelector: Adjacent sibling combinator, whitespace before: #adjacent-p2        
++#adjacent-p3 
+PASS Fragment.querySelectorAll: Adjacent sibling combinator, no whitespace: #adjacent-p2+#adjacent-p3 
+PASS Fragment.querySelector: Adjacent sibling combinator, no whitespace: #adjacent-p2+#adjacent-p3 
+PASS Fragment.querySelectorAll: General sibling combinator, matching element that is a sibling of an element with id: #sibling-div2~div 
+PASS Fragment.querySelector: General sibling combinator, matching element that is a sibling of an element with id: #sibling-div2~div 
+PASS Fragment.querySelectorAll: General sibling combinator, matching element with id that is a sibling of an element: div~#sibling-div4 
+PASS Fragment.querySelector: General sibling combinator, matching element with id that is a sibling of an element: div~#sibling-div4 
+PASS Fragment.querySelectorAll: General sibling combinator, matching element with id that is a sibling of an element with id: #sibling-div2~#sibling-div4 
+PASS Fragment.querySelector: General sibling combinator, matching element with id that is a sibling of an element with id: #sibling-div2~#sibling-div4 
+PASS Fragment.querySelectorAll: General sibling combinator, matching element with class that is a sibling of an element with id: #sibling-div2~.sibling-div 
+PASS Fragment.querySelector: General sibling combinator, matching element with class that is a sibling of an element with id: #sibling-div2~.sibling-div 
+PASS Fragment.querySelectorAll: General sibling combinator, matching p element that is a sibling of a div element: #sibling div~p 
+PASS Fragment.querySelector: General sibling combinator, matching p element that is a sibling of a div element: #sibling div~p 
+PASS Fragment.querySelectorAll: General sibling combinator, not matching element with id that is not a sibling after a p element: #sibling&gt;p~div 
+PASS Fragment.querySelector: General sibling combinator, not matching element with id that is not a sibling after a p element: #sibling&gt;p~div 
+PASS Fragment.querySelectorAll: General sibling combinator, not matching element with id that is not a sibling after an element with id: #sibling-div2~#sibling-div3, #sibling-div2~#sibling-div1 
+PASS Fragment.querySelector: General sibling combinator, not matching element with id that is not a sibling after an element with id: #sibling-div2~#sibling-div3, #sibling-div2~#sibling-div1 
+PASS Fragment.querySelectorAll: General sibling combinator, surrounded by whitespace: #sibling-p2        
+~        
+#sibling-p3 
+PASS Fragment.querySelector: General sibling combinator, surrounded by whitespace: #sibling-p2        
+~        
+#sibling-p3 
+PASS Fragment.querySelectorAll: General sibling combinator, whitespace after: #sibling-p2~        
+#sibling-p3 
+PASS Fragment.querySelector: General sibling combinator, whitespace after: #sibling-p2~        
+#sibling-p3 
+PASS Fragment.querySelectorAll: General sibling combinator, whitespace before: #sibling-p2        
+~#sibling-p3 
+PASS Fragment.querySelector: General sibling combinator, whitespace before: #sibling-p2        
+~#sibling-p3 
+PASS Fragment.querySelectorAll: General sibling combinator, no whitespace: #sibling-p2~#sibling-p3 
+PASS Fragment.querySelector: General sibling combinator, no whitespace: #sibling-p2~#sibling-p3 
+PASS Fragment.querySelectorAll: Syntax, group of selectors separator, surrounded by whitespace: #group em        

+,        

+#group strong 
+PASS Fragment.querySelector: Syntax, group of selectors separator, surrounded by whitespace: #group em        

+,        

+#group strong 
+PASS Fragment.querySelectorAll: Syntax, group of selectors separator, whitespace after: #group em,        
+#group strong 
+PASS Fragment.querySelector: Syntax, group of selectors separator, whitespace after: #group em,        
+#group strong 
+PASS Fragment.querySelectorAll: Syntax, group of selectors separator, whitespace before: #group em        
+,#group strong 
+PASS Fragment.querySelector: Syntax, group of selectors separator, whitespace before: #group em        
+,#group strong 
+PASS Fragment.querySelectorAll: Syntax, group of selectors separator, no whitespace: #group em,#group strong 
+PASS Fragment.querySelector: Syntax, group of selectors separator, no whitespace: #group em,#group strong 
+PASS In-document Element.querySelectorAll: Type selector, matching html element: html 
+PASS In-document Element.querySelector: Type selector, matching html element: html 
+PASS In-document Element.querySelectorAll: Type selector, matching body element: body 
+PASS In-document Element.querySelector: Type selector, matching body element: body 
+PASS In-document Element.querySelectorAll: Universal selector, matching all children of element with specified ID: #universal&gt;* 
+PASS In-document Element.querySelector: Universal selector, matching all children of element with specified ID: #universal&gt;* 
+PASS In-document Element.querySelectorAll: Universal selector, matching all grandchildren of element with specified ID: #universal&gt;*&gt;* 
+PASS In-document Element.querySelector: Universal selector, matching all grandchildren of element with specified ID: #universal&gt;*&gt;* 
+PASS In-document Element.querySelectorAll: Universal selector, matching all children of empty element with specified ID: #empty&gt;* 
+PASS In-document Element.querySelector: Universal selector, matching all children of empty element with specified ID: #empty&gt;* 
+PASS In-document Element.querySelectorAll: Universal selector, matching all descendants of element with specified ID: #universal * 
+PASS In-document Element.querySelector: Universal selector, matching all descendants of element with specified ID: #universal * 
+PASS In-document Element.querySelectorAll: Attribute presence selector, matching align attribute with value: .attr-presence-div1[align] 
+PASS In-document Element.querySelector: Attribute presence selector, matching align attribute with value: .attr-presence-div1[align] 
+PASS In-document Element.querySelectorAll: Attribute presence selector, matching align attribute with empty value: .attr-presence-div2[align] 
+PASS In-document Element.querySelector: Attribute presence selector, matching align attribute with empty value: .attr-presence-div2[align] 
+PASS In-document Element.querySelectorAll: Attribute presence selector, matching title attribute, case insensitivity: #attr-presence [TiTlE] 
+PASS In-document Element.querySelector: Attribute presence selector, matching title attribute, case insensitivity: #attr-presence [TiTlE] 
+PASS In-document Element.querySelectorAll: Attribute presence selector, matching custom data-* attribute: [data-attr-presence] 
+PASS In-document Element.querySelector: Attribute presence selector, matching custom data-* attribute: [data-attr-presence] 
+PASS In-document Element.querySelectorAll: Attribute presence selector, not matching attribute with similar name: .attr-presence-div3[align], .attr-presence-div4[align] 
+PASS In-document Element.querySelector: Attribute presence selector, not matching attribute with similar name: .attr-presence-div3[align], .attr-presence-div4[align] 
+PASS In-document Element.querySelectorAll: Attribute presence selector, matching attribute with non-ASCII characters: ul[data-中文] 
+PASS In-document Element.querySelector: Attribute presence selector, matching attribute with non-ASCII characters: ul[data-中文] 
+PASS In-document Element.querySelectorAll: Attribute presence selector, not matching default option without selected attribute: #attr-presence-select1 option[selected] 
+PASS In-document Element.querySelector: Attribute presence selector, not matching default option without selected attribute: #attr-presence-select1 option[selected] 
+PASS In-document Element.querySelectorAll: Attribute presence selector, matching option with selected attribute: #attr-presence-select2 option[selected] 
+PASS In-document Element.querySelector: Attribute presence selector, matching option with selected attribute: #attr-presence-select2 option[selected] 
+PASS In-document Element.querySelectorAll: Attribute presence selector, matching multiple options with selected attributes: #attr-presence-select3 option[selected] 
+PASS In-document Element.querySelector: Attribute presence selector, matching multiple options with selected attributes: #attr-presence-select3 option[selected] 
+PASS In-document Element.querySelectorAll: Attribute value selector, matching align attribute with value: #attr-value [align=&quot;center&quot;] 
+PASS In-document Element.querySelector: Attribute value selector, matching align attribute with value: #attr-value [align=&quot;center&quot;] 
+PASS In-document Element.querySelectorAll: Attribute value selector, matching align attribute with empty value: #attr-value [align=&quot;&quot;] 
+PASS In-document Element.querySelector: Attribute value selector, matching align attribute with empty value: #attr-value [align=&quot;&quot;] 
+PASS In-document Element.querySelectorAll: Attribute value selector, not matching align attribute with partial value: #attr-value [align=&quot;c&quot;] 
+PASS In-document Element.querySelector: Attribute value selector, not matching align attribute with partial value: #attr-value [align=&quot;c&quot;] 
+PASS In-document Element.querySelectorAll: Attribute value selector, not matching align attribute with incorrect value: #attr-value [align=&quot;centera&quot;] 
+PASS In-document Element.querySelector: Attribute value selector, not matching align attribute with incorrect value: #attr-value [align=&quot;centera&quot;] 
+PASS In-document Element.querySelectorAll: Attribute value selector, matching custom data-* attribute with unicode escaped value: [data-attr-value=&quot;\e9&quot;] 
+PASS In-document Element.querySelector: Attribute value selector, matching custom data-* attribute with unicode escaped value: [data-attr-value=&quot;\e9&quot;] 
+PASS In-document Element.querySelectorAll: Attribute value selector, matching custom data-* attribute with escaped character: [data-attr-value_foo=&quot;\e9&quot;] 
+PASS In-document Element.querySelector: Attribute value selector, matching custom data-* attribute with escaped character: [data-attr-value_foo=&quot;\e9&quot;] 
+PASS In-document Element.querySelectorAll: Attribute value selector with single-quoted value, matching multiple inputs with type attributes: #attr-value input[type='hidden'],#attr-value input[type='radio'] 
+PASS In-document Element.querySelector: Attribute value selector with single-quoted value, matching multiple inputs with type attributes: #attr-value input[type='hidden'],#attr-value input[type='radio'] 
+PASS In-document Element.querySelectorAll: Attribute value selector with double-quoted value, matching multiple inputs with type attributes: #attr-value input[type=&quot;hidden&quot;],#attr-value input[type='radio'] 
+PASS In-document Element.querySelector: Attribute value selector with double-quoted value, matching multiple inputs with type attributes: #attr-value input[type=&quot;hidden&quot;],#attr-value input[type='radio'] 
+PASS In-document Element.querySelectorAll: Attribute value selector with unquoted value, matching multiple inputs with type attributes: #attr-value input[type=hidden],#attr-value input[type=radio] 
+PASS In-document Element.querySelector: Attribute value selector with unquoted value, matching multiple inputs with type attributes: #attr-value input[type=hidden],#attr-value input[type=radio] 
+PASS In-document Element.querySelectorAll: Attribute value selector, matching attribute with value using non-ASCII characters: [data-attr-value=中文] 
+PASS In-document Element.querySelector: Attribute value selector, matching attribute with value using non-ASCII characters: [data-attr-value=中文] 
+PASS In-document Element.querySelectorAll: Attribute whitespace-separated list selector, matching class attribute with value: #attr-whitespace [class~=&quot;div1&quot;] 
+PASS In-document Element.querySelector: Attribute whitespace-separated list selector, matching class attribute with value: #attr-whitespace [class~=&quot;div1&quot;] 
+PASS In-document Element.querySelectorAll: Attribute whitespace-separated list selector, not matching class attribute with empty value: #attr-whitespace [class~=&quot;&quot;] 
+PASS In-document Element.querySelector: Attribute whitespace-separated list selector, not matching class attribute with empty value: #attr-whitespace [class~=&quot;&quot;] 
+PASS In-document Element.querySelectorAll: Attribute whitespace-separated list selector, not matching class attribute with partial value: [data-attr-whitespace~=&quot;div&quot;] 
+PASS In-document Element.querySelector: Attribute whitespace-separated list selector, not matching class attribute with partial value: [data-attr-whitespace~=&quot;div&quot;] 
+PASS In-document Element.querySelectorAll: Attribute whitespace-separated list selector, matching custom data-* attribute with unicode escaped value: [data-attr-whitespace~=&quot;\0000e9&quot;] 
+PASS In-document Element.querySelector: Attribute whitespace-separated list selector, matching custom data-* attribute with unicode escaped value: [data-attr-whitespace~=&quot;\0000e9&quot;] 
+PASS In-document Element.querySelectorAll: Attribute whitespace-separated list selector, matching custom data-* attribute with escaped character: [data-attr-whitespace_foo~=&quot;\e9&quot;] 
+PASS In-document Element.querySelector: Attribute whitespace-separated list selector, matching custom data-* attribute with escaped character: [data-attr-whitespace_foo~=&quot;\e9&quot;] 
+PASS In-document Element.querySelectorAll: Attribute whitespace-separated list selector with single-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~='bookmark'],  #attr-whitespace a[rel~='nofollow'] 
+PASS In-document Element.querySelector: Attribute whitespace-separated list selector with single-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~='bookmark'],  #attr-whitespace a[rel~='nofollow'] 
+PASS In-document Element.querySelectorAll: Attribute whitespace-separated list selector with double-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=&quot;bookmark&quot;],#attr-whitespace a[rel~='nofollow'] 
+PASS In-document Element.querySelector: Attribute whitespace-separated list selector with double-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=&quot;bookmark&quot;],#attr-whitespace a[rel~='nofollow'] 
+PASS In-document Element.querySelectorAll: Attribute whitespace-separated list selector with unquoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=bookmark],    #attr-whitespace a[rel~=nofollow] 
+PASS In-document Element.querySelector: Attribute whitespace-separated list selector with unquoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=bookmark],    #attr-whitespace a[rel~=nofollow] 
+PASS In-document Element.querySelectorAll: Attribute whitespace-separated list selector with double-quoted value, not matching value with space: #attr-whitespace a[rel~=&quot;book mark&quot;] 
+PASS In-document Element.querySelector: Attribute whitespace-separated list selector with double-quoted value, not matching value with space: #attr-whitespace a[rel~=&quot;book mark&quot;] 
+PASS In-document Element.querySelectorAll: Attribute whitespace-separated list selector, matching title attribute with value using non-ASCII characters: #attr-whitespace [title~=中文] 
+PASS In-document Element.querySelector: Attribute whitespace-separated list selector, matching title attribute with value using non-ASCII characters: #attr-whitespace [title~=中文] 
+PASS In-document Element.querySelectorAll: Attribute hyphen-separated list selector, not matching unspecified lang attribute: #attr-hyphen-div1[lang|=&quot;en&quot;] 
+PASS In-document Element.querySelector: Attribute hyphen-separated list selector, not matching unspecified lang attribute: #attr-hyphen-div1[lang|=&quot;en&quot;] 
+PASS In-document Element.querySelectorAll: Attribute hyphen-separated list selector, matching lang attribute with exact value: #attr-hyphen-div2[lang|=&quot;fr&quot;] 
+PASS In-document Element.querySelector: Attribute hyphen-separated list selector, matching lang attribute with exact value: #attr-hyphen-div2[lang|=&quot;fr&quot;] 
+PASS In-document Element.querySelectorAll: Attribute hyphen-separated list selector, matching lang attribute with partial value: #attr-hyphen-div3[lang|=&quot;en&quot;] 
+PASS In-document Element.querySelector: Attribute hyphen-separated list selector, matching lang attribute with partial value: #attr-hyphen-div3[lang|=&quot;en&quot;] 
+PASS In-document Element.querySelectorAll: Attribute hyphen-separated list selector, not matching incorrect value: #attr-hyphen-div4[lang|=&quot;es-AR&quot;] 
+PASS In-document Element.querySelector: Attribute hyphen-separated list selector, not matching incorrect value: #attr-hyphen-div4[lang|=&quot;es-AR&quot;] 
+PASS In-document Element.querySelectorAll: Attribute begins with selector, matching href attributes beginning with specified substring: #attr-begins a[href^=&quot;http://www&quot;] 
+PASS In-document Element.querySelector: Attribute begins with selector, matching href attributes beginning with specified substring: #attr-begins a[href^=&quot;http://www&quot;] 
+PASS In-document Element.querySelectorAll: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^=&quot;en-&quot;] 
+PASS In-document Element.querySelector: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^=&quot;en-&quot;] 
+PASS In-document Element.querySelectorAll: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
+PASS In-document Element.querySelector: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
+PASS In-document Element.querySelectorAll: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=' apple'] 
+PASS In-document Element.querySelector: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=' apple'] 
+PASS In-document Element.querySelectorAll: Attribute begins with selector with double-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=&quot; apple&quot;] 
+PASS In-document Element.querySelector: Attribute begins with selector with double-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=&quot; apple&quot;] 
+PASS In-document Element.querySelectorAll: Attribute begins with selector with unquoted value, not matching class attribute not beginning with specified substring: #attr-begins [class^= apple] 
+PASS In-document Element.querySelector: Attribute begins with selector with unquoted value, not matching class attribute not beginning with specified substring: #attr-begins [class^= apple] 
+PASS In-document Element.querySelectorAll: Attribute ends with selector, matching href attributes ending with specified substring: #attr-ends a[href$=&quot;.org&quot;] 
+PASS In-document Element.querySelector: Attribute ends with selector, matching href attributes ending with specified substring: #attr-ends a[href$=&quot;.org&quot;] 
+PASS In-document Element.querySelectorAll: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$=&quot;-CH&quot;] 
+PASS In-document Element.querySelector: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$=&quot;-CH&quot;] 
+PASS In-document Element.querySelectorAll: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
+PASS In-document Element.querySelector: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
+PASS In-document Element.querySelectorAll: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring: #attr-ends [class$='apple '] 
+PASS In-document Element.querySelector: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring: #attr-ends [class$='apple '] 
+PASS In-document Element.querySelectorAll: Attribute ends with selector with double-quoted value, matching class attribute ending with specified substring: #attr-ends [class$=&quot;apple &quot;] 
+PASS In-document Element.querySelector: Attribute ends with selector with double-quoted value, matching class attribute ending with specified substring: #attr-ends [class$=&quot;apple &quot;] 
+PASS In-document Element.querySelectorAll: Attribute ends with selector with unquoted value, not matching class attribute not ending with specified substring: #attr-ends [class$=apple ] 
+PASS In-document Element.querySelector: Attribute ends with selector with unquoted value, not matching class attribute not ending with specified substring: #attr-ends [class$=apple ] 
+PASS In-document Element.querySelectorAll: Attribute contains selector, matching href attributes beginning with specified substring: #attr-contains a[href*=&quot;http://www&quot;] 
+PASS In-document Element.querySelector: Attribute contains selector, matching href attributes beginning with specified substring: #attr-contains a[href*=&quot;http://www&quot;] 
+PASS In-document Element.querySelectorAll: Attribute contains selector, matching href attributes ending with specified substring: #attr-contains a[href*=&quot;.org&quot;] 
+PASS In-document Element.querySelector: Attribute contains selector, matching href attributes ending with specified substring: #attr-contains a[href*=&quot;.org&quot;] 
+PASS In-document Element.querySelectorAll: Attribute contains selector, matching href attributes containing specified substring: #attr-contains a[href*=&quot;.example.&quot;] 
+PASS In-document Element.querySelector: Attribute contains selector, matching href attributes containing specified substring: #attr-contains a[href*=&quot;.example.&quot;] 
+PASS In-document Element.querySelectorAll: Attribute contains selector, matching lang attributes beginning with specified substring, : #attr-contains [lang*=&quot;en-&quot;] 
+PASS In-document Element.querySelector: Attribute contains selector, matching lang attributes beginning with specified substring, : #attr-contains [lang*=&quot;en-&quot;] 
+PASS In-document Element.querySelectorAll: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*=&quot;-CH&quot;] 
+PASS In-document Element.querySelector: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*=&quot;-CH&quot;] 
+PASS In-document Element.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
+PASS In-document Element.querySelector: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
+PASS In-document Element.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring: #attr-contains [class*='orange '] 
+PASS In-document Element.querySelector: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring: #attr-contains [class*='orange '] 
+PASS In-document Element.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute containing specified substring: #attr-contains [class*='ple banana ora'] 
+PASS In-document Element.querySelector: Attribute contains selector with single-quoted value, matching class attribute containing specified substring: #attr-contains [class*='ple banana ora'] 
+PASS In-document Element.querySelectorAll: Attribute contains selector with double-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=&quot; apple&quot;] 
+PASS In-document Element.querySelector: Attribute contains selector with double-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=&quot; apple&quot;] 
+PASS In-document Element.querySelectorAll: Attribute contains selector with double-quoted value, matching class attribute ending with specified substring: #attr-contains [class*=&quot;orange &quot;] 
+PASS In-document Element.querySelector: Attribute contains selector with double-quoted value, matching class attribute ending with specified substring: #attr-contains [class*=&quot;orange &quot;] 
+PASS In-document Element.querySelectorAll: Attribute contains selector with double-quoted value, matching class attribute containing specified substring: #attr-contains [class*=&quot;ple banana ora&quot;] 
+PASS In-document Element.querySelector: Attribute contains selector with double-quoted value, matching class attribute containing specified substring: #attr-contains [class*=&quot;ple banana ora&quot;] 
+PASS In-document Element.querySelectorAll: Attribute contains selector with unquoted value, matching class attribute beginning with specified substring: #attr-contains [class*= apple] 
+PASS In-document Element.querySelector: Attribute contains selector with unquoted value, matching class attribute beginning with specified substring: #attr-contains [class*= apple] 
+PASS In-document Element.querySelectorAll: Attribute contains selector with unquoted value, matching class attribute ending with specified substring: #attr-contains [class*=orange ] 
+PASS In-document Element.querySelector: Attribute contains selector with unquoted value, matching class attribute ending with specified substring: #attr-contains [class*=orange ] 
+PASS In-document Element.querySelectorAll: Attribute contains selector with unquoted value, matching class attribute containing specified substring: #attr-contains [class*= banana ] 
+PASS In-document Element.querySelector: Attribute contains selector with unquoted value, matching class attribute containing specified substring: #attr-contains [class*= banana ] 
+PASS In-document Element.querySelectorAll: :root pseudo-class selector, not matching document root element: :root 
+PASS In-document Element.querySelector: :root pseudo-class selector, not matching document root element: :root 
+PASS In-document Element.querySelectorAll: :nth-child selector, matching the third child element: #pseudo-nth-table1 :nth-child(3) 
+PASS In-document Element.querySelector: :nth-child selector, matching the third child element: #pseudo-nth-table1 :nth-child(3) 
+PASS In-document Element.querySelectorAll: :nth-child selector, matching every third child element: #pseudo-nth li:nth-child(3n) 
+PASS In-document Element.querySelector: :nth-child selector, matching every third child element: #pseudo-nth li:nth-child(3n) 
+PASS In-document Element.querySelectorAll: :nth-child selector, matching every second child element, starting from the fourth: #pseudo-nth li:nth-child(2n+4) 
+PASS In-document Element.querySelector: :nth-child selector, matching every second child element, starting from the fourth: #pseudo-nth li:nth-child(2n+4) 
+PASS In-document Element.querySelectorAll: :nth-child selector, matching every fourth child element, starting from the third: #pseudo-nth-p1 :nth-child(4n-1) 
+PASS In-document Element.querySelector: :nth-child selector, matching every fourth child element, starting from the third: #pseudo-nth-p1 :nth-child(4n-1) 
+PASS In-document Element.querySelectorAll: :nth-last-child selector, matching the third last child element: #pseudo-nth-table1 :nth-last-child(3) 
+PASS In-document Element.querySelector: :nth-last-child selector, matching the third last child element: #pseudo-nth-table1 :nth-last-child(3) 
+PASS In-document Element.querySelectorAll: :nth-last-child selector, matching every third child element from the end: #pseudo-nth li:nth-last-child(3n) 
+PASS In-document Element.querySelector: :nth-last-child selector, matching every third child element from the end: #pseudo-nth li:nth-last-child(3n) 
+PASS In-document Element.querySelectorAll: :nth-last-child selector, matching every second child element from the end, starting from the fourth last: #pseudo-nth li:nth-last-child(2n+4) 
+PASS In-document Element.querySelector: :nth-last-child selector, matching every second child element from the end, starting from the fourth last: #pseudo-nth li:nth-last-child(2n+4) 
+PASS In-document Element.querySelectorAll: :nth-last-child selector, matching every fourth element from the end, starting from the third last: #pseudo-nth-p1 :nth-last-child(4n-1) 
+PASS In-document Element.querySelector: :nth-last-child selector, matching every fourth element from the end, starting from the third last: #pseudo-nth-p1 :nth-last-child(4n-1) 
+PASS In-document Element.querySelectorAll: :nth-of-type selector, matching the third em element: #pseudo-nth-p1 em:nth-of-type(3) 
+PASS In-document Element.querySelector: :nth-of-type selector, matching the third em element: #pseudo-nth-p1 em:nth-of-type(3) 
+PASS In-document Element.querySelectorAll: :nth-of-type selector, matching every second element of their type: #pseudo-nth-p1 :nth-of-type(2n) 
+PASS In-document Element.querySelector: :nth-of-type selector, matching every second element of their type: #pseudo-nth-p1 :nth-of-type(2n) 
+PASS In-document Element.querySelectorAll: :nth-of-type selector, matching every second elemetn of their type, starting from the first: #pseudo-nth-p1 span:nth-of-type(2n-1) 
+PASS In-document Element.querySelector: :nth-of-type selector, matching every second elemetn of their type, starting from the first: #pseudo-nth-p1 span:nth-of-type(2n-1) 
+PASS In-document Element.querySelectorAll: :nth-last-of-type selector, matching the thrid last em element: #pseudo-nth-p1 em:nth-last-of-type(3) 
+PASS In-document Element.querySelector: :nth-last-of-type selector, matching the thrid last em element: #pseudo-nth-p1 em:nth-last-of-type(3) 
+PASS In-document Element.querySelectorAll: :nth-last-of-type selector, matching every second last element of their type: #pseudo-nth-p1 :nth-last-of-type(2n) 
+PASS In-document Element.querySelector: :nth-last-of-type selector, matching every second last element of their type: #pseudo-nth-p1 :nth-last-of-type(2n) 
+PASS In-document Element.querySelectorAll: :nth-last-of-type selector, matching every second last element of their type, starting from the last: #pseudo-nth-p1 span:nth-last-of-type(2n-1) 
+PASS In-document Element.querySelector: :nth-last-of-type selector, matching every second last element of their type, starting from the last: #pseudo-nth-p1 span:nth-last-of-type(2n-1) 
+PASS In-document Element.querySelectorAll: :first-of-type selector, matching the first em element: #pseudo-nth-p1 em:first-of-type 
+PASS In-document Element.querySelector: :first-of-type selector, matching the first em element: #pseudo-nth-p1 em:first-of-type 
+PASS In-document Element.querySelectorAll: :first-of-type selector, matching the first of every type of element: #pseudo-nth-p1 :first-of-type 
+PASS In-document Element.querySelector: :first-of-type selector, matching the first of every type of element: #pseudo-nth-p1 :first-of-type 
+PASS In-document Element.querySelectorAll: :first-of-type selector, matching the first td element in each table row: #pseudo-nth-table1 tr :first-of-type 
+PASS In-document Element.querySelector: :first-of-type selector, matching the first td element in each table row: #pseudo-nth-table1 tr :first-of-type 
+PASS In-document Element.querySelectorAll: :last-of-type selector, matching the last em elemnet: #pseudo-nth-p1 em:last-of-type 
+PASS In-document Element.querySelector: :last-of-type selector, matching the last em elemnet: #pseudo-nth-p1 em:last-of-type 
+PASS In-document Element.querySelectorAll: :last-of-type selector, matching the last of every type of element: #pseudo-nth-p1 :last-of-type 
+PASS In-document Element.querySelector: :last-of-type selector, matching the last of every type of element: #pseudo-nth-p1 :last-of-type 
+PASS In-document Element.querySelectorAll: :last-of-type selector, matching the last td element in each table row: #pseudo-nth-table1 tr :last-of-type 
+PASS In-document Element.querySelector: :last-of-type selector, matching the last td element in each table row: #pseudo-nth-table1 tr :last-of-type 
+PASS In-document Element.querySelectorAll: :first-child pseudo-class selector, matching first child div element: #pseudo-first-child div:first-child 
+PASS In-document Element.querySelector: :first-child pseudo-class selector, matching first child div element: #pseudo-first-child div:first-child 
+PASS In-document Element.querySelectorAll: :first-child pseudo-class selector, doesn't match non-first-child elements: .pseudo-first-child-div2:first-child, .pseudo-first-child-div3:first-child 
+PASS In-document Element.querySelector: :first-child pseudo-class selector, doesn't match non-first-child elements: .pseudo-first-child-div2:first-child, .pseudo-first-child-div3:first-child 
+PASS In-document Element.querySelectorAll: :first-child pseudo-class selector, matching first-child of multiple elements: #pseudo-first-child span:first-child 
+PASS In-document Element.querySelector: :first-child pseudo-class selector, matching first-child of multiple elements: #pseudo-first-child span:first-child 
+PASS In-document Element.querySelectorAll: :last-child pseudo-class selector, matching last child div element: #pseudo-last-child div:last-child 
+PASS In-document Element.querySelector: :last-child pseudo-class selector, matching last child div element: #pseudo-last-child div:last-child 
+PASS In-document Element.querySelectorAll: :last-child pseudo-class selector, doesn't match non-last-child elements: .pseudo-last-child-div1:last-child, .pseudo-last-child-div2:first-child 
+PASS In-document Element.querySelector: :last-child pseudo-class selector, doesn't match non-last-child elements: .pseudo-last-child-div1:last-child, .pseudo-last-child-div2:first-child 
+PASS In-document Element.querySelectorAll: :last-child pseudo-class selector, matching first-child of multiple elements: #pseudo-last-child span:last-child 
+PASS In-document Element.querySelector: :last-child pseudo-class selector, matching first-child of multiple elements: #pseudo-last-child span:last-child 
+PASS In-document Element.querySelectorAll: :pseudo-only-child pseudo-class selector, matching all only-child elements: #pseudo-only :only-child 
+PASS In-document Element.querySelector: :pseudo-only-child pseudo-class selector, matching all only-child elements: #pseudo-only :only-child 
+PASS In-document Element.querySelectorAll: :pseudo-only-child pseudo-class selector, matching only-child em elements: #pseudo-only em:only-child 
+PASS In-document Element.querySelector: :pseudo-only-child pseudo-class selector, matching only-child em elements: #pseudo-only em:only-child 
+PASS In-document Element.querySelectorAll: :pseudo-only-of-type pseudo-class selector, matching all elements with no siblings of the same type: #pseudo-only :only-of-type 
+PASS In-document Element.querySelector: :pseudo-only-of-type pseudo-class selector, matching all elements with no siblings of the same type: #pseudo-only :only-of-type 
+PASS In-document Element.querySelectorAll: :pseudo-only-of-type pseudo-class selector, matching em elements with no siblings of the same type: #pseudo-only em:only-of-type 
+PASS In-document Element.querySelector: :pseudo-only-of-type pseudo-class selector, matching em elements with no siblings of the same type: #pseudo-only em:only-of-type 
+PASS In-document Element.querySelectorAll: :empty pseudo-class selector, matching empty p elements: #pseudo-empty p:empty 
+PASS In-document Element.querySelector: :empty pseudo-class selector, matching empty p elements: #pseudo-empty p:empty 
+PASS In-document Element.querySelectorAll: :empty pseudo-class selector, matching all empty elements: #pseudo-empty :empty 
+PASS In-document Element.querySelector: :empty pseudo-class selector, matching all empty elements: #pseudo-empty :empty 
+PASS In-document Element.querySelectorAll: :link and :visited pseudo-class selectors, matching a and area elements with href attributes: #pseudo-link :link, #pseudo-link :visited 
+PASS In-document Element.querySelector: :link and :visited pseudo-class selectors, matching a and area elements with href attributes: #pseudo-link :link, #pseudo-link :visited 
+PASS In-document Element.querySelectorAll: :link and :visited pseudo-class selectors, not matching link elements with href attributes: #head :link, #head :visited 
+PASS In-document Element.querySelector: :link and :visited pseudo-class selectors, not matching link elements with href attributes: #head :link, #head :visited 
+PASS In-document Element.querySelectorAll: :link and :visited pseudo-class selectors, chained, mutually exclusive pseudo-classes match nothing: :link:visited 
+PASS In-document Element.querySelector: :link and :visited pseudo-class selectors, chained, mutually exclusive pseudo-classes match nothing: :link:visited 
+PASS In-document Element.querySelectorAll: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target 
+PASS In-document Element.querySelector: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target 
+PASS In-document Element.querySelectorAll: :lang pseudo-class selector, matching inherited language: #pseudo-lang-div1:lang(en) 
+PASS In-document Element.querySelector: :lang pseudo-class selector, matching inherited language: #pseudo-lang-div1:lang(en) 
+PASS In-document Element.querySelectorAll: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr) 
+PASS In-document Element.querySelector: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr) 
+PASS In-document Element.querySelectorAll: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en) 
+PASS In-document Element.querySelector: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en) 
+PASS In-document Element.querySelectorAll: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR) 
+PASS In-document Element.querySelector: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR) 
+PASS In-document Element.querySelectorAll: :enabled pseudo-class selector, matching all enabled form controls: #pseudo-ui :enabled 
+PASS In-document Element.querySelector: :enabled pseudo-class selector, matching all enabled form controls: #pseudo-ui :enabled 
+PASS In-document Element.querySelectorAll: :enabled pseudo-class selector, matching all disabled form controls: #pseudo-ui :disabled 
+PASS In-document Element.querySelector: :enabled pseudo-class selector, matching all disabled form controls: #pseudo-ui :disabled 
+PASS In-document Element.querySelectorAll: :checked pseudo-class selector, matching checked radio buttons and checkboxes: #pseudo-ui :checked 
+PASS In-document Element.querySelector: :checked pseudo-class selector, matching checked radio buttons and checkboxes: #pseudo-ui :checked 
+PASS In-document Element.querySelectorAll: :not pseudo-class selector, matching : #not&gt;:not(div) 
+PASS In-document Element.querySelector: :not pseudo-class selector, matching : #not&gt;:not(div) 
+PASS In-document Element.querySelectorAll: :not pseudo-class selector, matching : #not * :not(:first-child) 
+PASS In-document Element.querySelector: :not pseudo-class selector, matching : #not * :not(:first-child) 
+PASS In-document Element.querySelectorAll: :not pseudo-class selector, matching nothing: :not(*) 
+PASS In-document Element.querySelector: :not pseudo-class selector, matching nothing: :not(*) 
+PASS In-document Element.querySelectorAll: :not pseudo-class selector, matching nothing: :not(*|*) 
+PASS In-document Element.querySelector: :not pseudo-class selector, matching nothing: :not(*|*) 
+PASS In-document Element.querySelectorAll: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line 
+PASS In-document Element.querySelector: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line 
+PASS In-document Element.querySelectorAll: ::first-line pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-line 
+PASS In-document Element.querySelector: ::first-line pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-line 
+PASS In-document Element.querySelectorAll: :first-letter pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-letter 
+PASS In-document Element.querySelector: :first-letter pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-letter 
+PASS In-document Element.querySelectorAll: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter 
+PASS In-document Element.querySelector: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter 
+PASS In-document Element.querySelectorAll: :before pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:before 
+PASS In-document Element.querySelector: :before pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:before 
+PASS In-document Element.querySelectorAll: ::before pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::before 
+PASS In-document Element.querySelector: ::before pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::before 
+PASS In-document Element.querySelectorAll: :after pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:after 
+PASS In-document Element.querySelector: :after pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:after 
+PASS In-document Element.querySelectorAll: ::after pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::after 
+PASS In-document Element.querySelector: ::after pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::after 
+PASS In-document Element.querySelectorAll: Class selector, matching element with specified class: .class-p 
+PASS In-document Element.querySelector: Class selector, matching element with specified class: .class-p 
+PASS In-document Element.querySelectorAll: Class selector, chained, matching only elements with all specified classes: #class .apple.orange.banana 
+PASS In-document Element.querySelector: Class selector, chained, matching only elements with all specified classes: #class .apple.orange.banana 
+PASS In-document Element.querySelectorAll: Class Selector, chained, with type selector: div.apple.banana.orange 
+PASS In-document Element.querySelector: Class Selector, chained, with type selector: div.apple.banana.orange 
+PASS In-document Element.querySelectorAll: Class selector, matching element with class value using non-ASCII characters (1): .台北Táiběi 
+PASS In-document Element.querySelector: Class selector, matching element with class value using non-ASCII characters (1): .台北Táiběi 
+PASS In-document Element.querySelectorAll: Class selector, matching multiple elements with class value using non-ASCII characters: .台北 
+PASS In-document Element.querySelector: Class selector, matching multiple elements with class value using non-ASCII characters: .台北 
+PASS In-document Element.querySelectorAll: Class selector, chained, matching element with multiple class values using non-ASCII characters (1): .台北Táiběi.台北 
+PASS In-document Element.querySelector: Class selector, chained, matching element with multiple class values using non-ASCII characters (1): .台北Táiběi.台北 
+PASS In-document Element.querySelectorAll: Class selector, matching element with class with escaped character: .foo\:bar 
+PASS In-document Element.querySelector: Class selector, matching element with class with escaped character: .foo\:bar 
+PASS In-document Element.querySelectorAll: Class selector, matching element with class with escaped character: .test\.foo\[5\]bar 
+PASS In-document Element.querySelector: Class selector, matching element with class with escaped character: .test\.foo\[5\]bar 
+PASS In-document Element.querySelectorAll: ID selector, matching element with specified id: #id #id-div1 
+PASS In-document Element.querySelector: ID selector, matching element with specified id: #id #id-div1 
+PASS In-document Element.querySelectorAll: ID selector, chained, matching element with specified id: #id-div1, #id-div1 
+PASS In-document Element.querySelector: ID selector, chained, matching element with specified id: #id-div1, #id-div1 
+PASS In-document Element.querySelectorAll: ID selector, chained, matching element with specified id: #id-div1, #id-div2 
+PASS In-document Element.querySelector: ID selector, chained, matching element with specified id: #id-div1, #id-div2 
+PASS In-document Element.querySelectorAll: ID Selector, chained, with type selector: div#id-div1, div#id-div2 
+PASS In-document Element.querySelector: ID Selector, chained, with type selector: div#id-div1, div#id-div2 
+PASS In-document Element.querySelectorAll: ID selector, not matching non-existent descendant: #id #none 
+PASS In-document Element.querySelector: ID selector, not matching non-existent descendant: #id #none 
+PASS In-document Element.querySelectorAll: ID selector, not matching non-existent ancestor: #none #id-div1 
+PASS In-document Element.querySelector: ID selector, not matching non-existent ancestor: #none #id-div1 
+PASS In-document Element.querySelectorAll: ID selector, matching multiple elements with duplicate id: #id-li-duplicate 
+PASS In-document Element.querySelector: ID selector, matching multiple elements with duplicate id: #id-li-duplicate 
+PASS In-document Element.querySelectorAll: ID selector, matching id value using non-ASCII characters (1): #台北Táiběi 
+PASS In-document Element.querySelector: ID selector, matching id value using non-ASCII characters (1): #台北Táiběi 
+PASS In-document Element.querySelectorAll: ID selector, matching id value using non-ASCII characters (2): #台北 
+PASS In-document Element.querySelector: ID selector, matching id value using non-ASCII characters (2): #台北 
+PASS In-document Element.querySelectorAll: ID selector, matching id values using non-ASCII characters (1): #台北Táiběi, #台北 
+PASS In-document Element.querySelector: ID selector, matching id values using non-ASCII characters (1): #台北Táiběi, #台北 
+PASS In-document Element.querySelectorAll: ID selector, matching element with id with escaped character: #\#foo\:bar 
+PASS In-document Element.querySelector: ID selector, matching element with id with escaped character: #\#foo\:bar 
+PASS In-document Element.querySelectorAll: ID selector, matching element with id with escaped character: #test\.foo\[5\]bar 
+PASS In-document Element.querySelector: ID selector, matching element with id with escaped character: #test\.foo\[5\]bar 
+PASS In-document Element.querySelectorAll: Namespace selector, matching element with any namespace: #any-namespace *|div 
+PASS In-document Element.querySelector: Namespace selector, matching element with any namespace: #any-namespace *|div 
+FAIL In-document Element.querySelectorAll: Namespace selector, matching div elements in no namespace only: #no-namespace |div assert_equals: The method should return the expected number of matches. expected 1 but got 4
+FAIL In-document Element.querySelector: Namespace selector, matching div elements in no namespace only: #no-namespace |div assert_equals: The method should return the first match. expected &quot;no-namespace-div3&quot; but got &quot;no-namespace-div1&quot;
+FAIL In-document Element.querySelectorAll: Namespace selector, matching any elements in no namespace only: #no-namespace |* assert_equals: The method should return the expected number of matches. expected 1 but got 4
+FAIL In-document Element.querySelector: Namespace selector, matching any elements in no namespace only: #no-namespace |* assert_equals: The method should return the first match. expected &quot;no-namespace-div3&quot; but got &quot;no-namespace-div1&quot;
+PASS In-document Element.querySelectorAll: Descendant combinator, matching element that is a descendant of an element with id: #descendant div 
+PASS In-document Element.querySelector: Descendant combinator, matching element that is a descendant of an element with id: #descendant div 
+PASS In-document Element.querySelectorAll: Descendant combinator, matching element with id that is a descendant of an element: body #descendant-div1 
+PASS In-document Element.querySelector: Descendant combinator, matching element with id that is a descendant of an element: body #descendant-div1 
+PASS In-document Element.querySelectorAll: Descendant combinator, matching element with id that is a descendant of an element: div #descendant-div1 
+PASS In-document Element.querySelector: Descendant combinator, matching element with id that is a descendant of an element: div #descendant-div1 
+PASS In-document Element.querySelectorAll: Descendant combinator, matching element with id that is a descendant of an element with id: #descendant #descendant-div2 
+PASS In-document Element.querySelector: Descendant combinator, matching element with id that is a descendant of an element with id: #descendant #descendant-div2 
+PASS In-document Element.querySelectorAll: Descendant combinator, matching element with class that is a descendant of an element with id: #descendant .descendant-div2 
+PASS In-document Element.querySelector: Descendant combinator, matching element with class that is a descendant of an element with id: #descendant .descendant-div2 
+PASS In-document Element.querySelectorAll: Descendant combinator, matching element with class that is a descendant of an element with class: .descendant-div1 .descendant-div3 
+PASS In-document Element.querySelector: Descendant combinator, matching element with class that is a descendant of an element with class: .descendant-div1 .descendant-div3 
+PASS In-document Element.querySelectorAll: Descendant combinator, not matching element with id that is not a descendant of an element with id: #descendant-div1 #descendant-div4 
+PASS In-document Element.querySelector: Descendant combinator, not matching element with id that is not a descendant of an element with id: #descendant-div1 #descendant-div4 
+PASS In-document Element.querySelectorAll: Descendant combinator, whitespace characters: #descendant        
+#descendant-div2 
+PASS In-document Element.querySelector: Descendant combinator, whitespace characters: #descendant        
+#descendant-div2 
+PASS In-document Element.querySelectorAll: Child combinator, matching element that is a child of an element with id: #child&gt;div 
+PASS In-document Element.querySelector: Child combinator, matching element that is a child of an element with id: #child&gt;div 
+PASS In-document Element.querySelectorAll: Child combinator, matching element with id that is a child of an element: div&gt;#child-div1 
+PASS In-document Element.querySelector: Child combinator, matching element with id that is a child of an element: div&gt;#child-div1 
+PASS In-document Element.querySelectorAll: Child combinator, matching element with id that is a child of an element with id: #child&gt;#child-div1 
+PASS In-document Element.querySelector: Child combinator, matching element with id that is a child of an element with id: #child&gt;#child-div1 
+PASS In-document Element.querySelectorAll: Child combinator, matching element with id that is a child of an element with class: #child-div1&gt;.child-div2 
+PASS In-document Element.querySelector: Child combinator, matching element with id that is a child of an element with class: #child-div1&gt;.child-div2 
+PASS In-document Element.querySelectorAll: Child combinator, matching element with class that is a child of an element with class: .child-div1&gt;.child-div2 
+PASS In-document Element.querySelector: Child combinator, matching element with class that is a child of an element with class: .child-div1&gt;.child-div2 
+PASS In-document Element.querySelectorAll: Child combinator, not matching element with id that is not a child of an element with id: #child&gt;#child-div3 
+PASS In-document Element.querySelector: Child combinator, not matching element with id that is not a child of an element with id: #child&gt;#child-div3 
+PASS In-document Element.querySelectorAll: Child combinator, not matching element with id that is not a child of an element with class: #child-div1&gt;.child-div3 
+PASS In-document Element.querySelector: Child combinator, not matching element with id that is not a child of an element with class: #child-div1&gt;.child-div3 
+PASS In-document Element.querySelectorAll: Child combinator, not matching element with class that is not a child of an element with class: .child-div1&gt;.child-div3 
+PASS In-document Element.querySelector: Child combinator, not matching element with class that is not a child of an element with class: .child-div1&gt;.child-div3 
+PASS In-document Element.querySelectorAll: Child combinator, surrounded by whitespace: #child-div1        
+&gt;        
+#child-div2 
+PASS In-document Element.querySelector: Child combinator, surrounded by whitespace: #child-div1        
+&gt;        
+#child-div2 
+PASS In-document Element.querySelectorAll: Child combinator, whitespace after: #child-div1&gt;        
+#child-div2 
+PASS In-document Element.querySelector: Child combinator, whitespace after: #child-div1&gt;        
+#child-div2 
+PASS In-document Element.querySelectorAll: Child combinator, whitespace before: #child-div1        
+&gt;#child-div2 
+PASS In-document Element.querySelector: Child combinator, whitespace before: #child-div1        
+&gt;#child-div2 
+PASS In-document Element.querySelectorAll: Child combinator, no whitespace: #child-div1&gt;#child-div2 
+PASS In-document Element.querySelector: Child combinator, no whitespace: #child-div1&gt;#child-div2 
+PASS In-document Element.querySelectorAll: Adjacent sibling combinator, matching element that is an adjacent sibling of an element with id: #adjacent-div2+div 
+PASS In-document Element.querySelector: Adjacent sibling combinator, matching element that is an adjacent sibling of an element with id: #adjacent-div2+div 
+PASS In-document Element.querySelectorAll: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element: div+#adjacent-div4 
+PASS In-document Element.querySelector: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element: div+#adjacent-div4 
+PASS In-document Element.querySelectorAll: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element with id: #adjacent-div2+#adjacent-div4 
+PASS In-document Element.querySelector: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element with id: #adjacent-div2+#adjacent-div4 
+PASS In-document Element.querySelectorAll: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with id: #adjacent-div2+.adjacent-div4 
+PASS In-document Element.querySelector: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with id: #adjacent-div2+.adjacent-div4 
+PASS In-document Element.querySelectorAll: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with class: .adjacent-div2+.adjacent-div4 
+PASS In-document Element.querySelector: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with class: .adjacent-div2+.adjacent-div4 
+PASS In-document Element.querySelectorAll: Adjacent sibling combinator, matching p element that is an adjacent sibling of a div element: #adjacent div+p 
+PASS In-document Element.querySelector: Adjacent sibling combinator, matching p element that is an adjacent sibling of a div element: #adjacent div+p 
+PASS In-document Element.querySelectorAll: Adjacent sibling combinator, not matching element with id that is not an adjacent sibling of an element with id: #adjacent-div2+#adjacent-p2, #adjacent-div2+#adjacent-div1 
+PASS In-document Element.querySelector: Adjacent sibling combinator, not matching element with id that is not an adjacent sibling of an element with id: #adjacent-div2+#adjacent-p2, #adjacent-div2+#adjacent-div1 
+PASS In-document Element.querySelectorAll: Adjacent sibling combinator, surrounded by whitespace: #adjacent-p2        
++        
+#adjacent-p3 
+PASS In-document Element.querySelector: Adjacent sibling combinator, surrounded by whitespace: #adjacent-p2        
++        
+#adjacent-p3 
+PASS In-document Element.querySelectorAll: Adjacent sibling combinator, whitespace after: #adjacent-p2+        
+#adjacent-p3 
+PASS In-document Element.querySelector: Adjacent sibling combinator, whitespace after: #adjacent-p2+        
+#adjacent-p3 
+PASS In-document Element.querySelectorAll: Adjacent sibling combinator, whitespace before: #adjacent-p2        
++#adjacent-p3 
+PASS In-document Element.querySelector: Adjacent sibling combinator, whitespace before: #adjacent-p2        
++#adjacent-p3 
+PASS In-document Element.querySelectorAll: Adjacent sibling combinator, no whitespace: #adjacent-p2+#adjacent-p3 
+PASS In-document Element.querySelector: Adjacent sibling combinator, no whitespace: #adjacent-p2+#adjacent-p3 
+PASS In-document Element.querySelectorAll: General sibling combinator, matching element that is a sibling of an element with id: #sibling-div2~div 
+PASS In-document Element.querySelector: General sibling combinator, matching element that is a sibling of an element with id: #sibling-div2~div 
+PASS In-document Element.querySelectorAll: General sibling combinator, matching element with id that is a sibling of an element: div~#sibling-div4 
+PASS In-document Element.querySelector: General sibling combinator, matching element with id that is a sibling of an element: div~#sibling-div4 
+PASS In-document Element.querySelectorAll: General sibling combinator, matching element with id that is a sibling of an element with id: #sibling-div2~#sibling-div4 
+PASS In-document Element.querySelector: General sibling combinator, matching element with id that is a sibling of an element with id: #sibling-div2~#sibling-div4 
+PASS In-document Element.querySelectorAll: General sibling combinator, matching element with class that is a sibling of an element with id: #sibling-div2~.sibling-div 
+PASS In-document Element.querySelector: General sibling combinator, matching element with class that is a sibling of an element with id: #sibling-div2~.sibling-div 
+PASS In-document Element.querySelectorAll: General sibling combinator, matching p element that is a sibling of a div element: #sibling div~p 
+PASS In-document Element.querySelector: General sibling combinator, matching p element that is a sibling of a div element: #sibling div~p 
+PASS In-document Element.querySelectorAll: General sibling combinator, not matching element with id that is not a sibling after a p element: #sibling&gt;p~div 
+PASS In-document Element.querySelector: General sibling combinator, not matching element with id that is not a sibling after a p element: #sibling&gt;p~div 
+PASS In-document Element.querySelectorAll: General sibling combinator, not matching element with id that is not a sibling after an element with id: #sibling-div2~#sibling-div3, #sibling-div2~#sibling-div1 
+PASS In-document Element.querySelector: General sibling combinator, not matching element with id that is not a sibling after an element with id: #sibling-div2~#sibling-div3, #sibling-div2~#sibling-div1 
+PASS In-document Element.querySelectorAll: General sibling combinator, surrounded by whitespace: #sibling-p2        
+~        
+#sibling-p3 
+PASS In-document Element.querySelector: General sibling combinator, surrounded by whitespace: #sibling-p2        
+~        
+#sibling-p3 
+PASS In-document Element.querySelectorAll: General sibling combinator, whitespace after: #sibling-p2~        
+#sibling-p3 
+PASS In-document Element.querySelector: General sibling combinator, whitespace after: #sibling-p2~        
+#sibling-p3 
+PASS In-document Element.querySelectorAll: General sibling combinator, whitespace before: #sibling-p2        
+~#sibling-p3 
+PASS In-document Element.querySelector: General sibling combinator, whitespace before: #sibling-p2        
+~#sibling-p3 
+PASS In-document Element.querySelectorAll: General sibling combinator, no whitespace: #sibling-p2~#sibling-p3 
+PASS In-document Element.querySelector: General sibling combinator, no whitespace: #sibling-p2~#sibling-p3 
+PASS In-document Element.querySelectorAll: Syntax, group of selectors separator, surrounded by whitespace: #group em        

+,        

+#group strong 
+PASS In-document Element.querySelector: Syntax, group of selectors separator, surrounded by whitespace: #group em        

+,        

+#group strong 
+PASS In-document Element.querySelectorAll: Syntax, group of selectors separator, whitespace after: #group em,        
+#group strong 
+PASS In-document Element.querySelector: Syntax, group of selectors separator, whitespace after: #group em,        
+#group strong 
+PASS In-document Element.querySelectorAll: Syntax, group of selectors separator, whitespace before: #group em        
+,#group strong 
+PASS In-document Element.querySelector: Syntax, group of selectors separator, whitespace before: #group em        
+,#group strong 
+PASS In-document Element.querySelectorAll: Syntax, group of selectors separator, no whitespace: #group em,#group strong 
+PASS In-document Element.querySelector: Syntax, group of selectors separator, no whitespace: #group em,#group strong 
+
</ins></span></pre></div>
<a id="branchessafari602branchLayoutTestsplatformmacimportedw3cwebplatformtestsdomnodesParentNodequerySelectorAllxhtexpectedtxt"></a>
<div class="addfile"><h4>Added: branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/dom/nodes/ParentNode-querySelector-All-xht-expected.txt (0 => 204212)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/dom/nodes/ParentNode-querySelector-All-xht-expected.txt                                (rev 0)
+++ branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/dom/nodes/ParentNode-querySelector-All-xht-expected.txt        2016-08-06 01:19:14 UTC (rev 204212)
</span><span class="lines">@@ -0,0 +1,2006 @@
</span><ins>+This test requires JavaScript.
+
+PASS Selectors-API Test Suite: XHTML 
+PASS Document supports querySelector 
+PASS Document supports querySelectorAll 
+PASS Document.querySelectorAll returns NodeList instance 
+PASS Detached Element supports querySelector 
+PASS Detached Element supports querySelectorAll 
+PASS Detached Element.querySelectorAll returns NodeList instance 
+PASS Fragment supports querySelector 
+PASS Fragment supports querySelectorAll 
+PASS Fragment.querySelectorAll returns NodeList instance 
+PASS In-document Element supports querySelector 
+PASS In-document Element supports querySelectorAll 
+PASS In-document Element.querySelectorAll returns NodeList instance 
+PASS Document.querySelectorAll null 
+PASS Document.querySelectorAll undefined 
+PASS Document.querySelectorAll no parameter 
+PASS Document.querySelector null 
+PASS Document.querySelector undefined 
+PASS Document.querySelector no parameter 
+PASS Document.querySelectorAll tree order 
+PASS Detached Element.querySelectorAll null 
+PASS Detached Element.querySelectorAll undefined 
+PASS Detached Element.querySelectorAll no parameter 
+PASS Detached Element.querySelector null 
+PASS Detached Element.querySelector undefined 
+PASS Detached Element.querySelector no parameter 
+PASS Detached Element.querySelectorAll tree order 
+PASS Fragment.querySelectorAll null 
+PASS Fragment.querySelectorAll undefined 
+PASS Fragment.querySelectorAll no parameter 
+PASS Fragment.querySelector null 
+PASS Fragment.querySelector undefined 
+PASS Fragment.querySelector no parameter 
+PASS Fragment.querySelectorAll tree order 
+PASS In-document Element.querySelectorAll null 
+PASS In-document Element.querySelectorAll undefined 
+PASS In-document Element.querySelectorAll no parameter 
+PASS In-document Element.querySelector null 
+PASS In-document Element.querySelector undefined 
+PASS In-document Element.querySelector no parameter 
+PASS In-document Element.querySelectorAll tree order 
+PASS Document: static NodeList 
+PASS Document: new NodeList 
+PASS Detached Element: static NodeList 
+PASS Detached Element: new NodeList 
+PASS Fragment: static NodeList 
+PASS Fragment: new NodeList 
+PASS In-document Element: static NodeList 
+PASS In-document Element: new NodeList 
+PASS Document.querySelector: Empty String:  
+PASS Document.querySelectorAll: Empty String:  
+PASS Document.querySelector: Invalid character: [ 
+PASS Document.querySelectorAll: Invalid character: [ 
+PASS Document.querySelector: Invalid character: ] 
+PASS Document.querySelectorAll: Invalid character: ] 
+PASS Document.querySelector: Invalid character: ( 
+PASS Document.querySelectorAll: Invalid character: ( 
+PASS Document.querySelector: Invalid character: ) 
+PASS Document.querySelectorAll: Invalid character: ) 
+PASS Document.querySelector: Invalid character: { 
+PASS Document.querySelectorAll: Invalid character: { 
+PASS Document.querySelector: Invalid character: } 
+PASS Document.querySelectorAll: Invalid character: } 
+PASS Document.querySelector: Invalid character: &lt; 
+PASS Document.querySelectorAll: Invalid character: &lt; 
+PASS Document.querySelector: Invalid character: &gt; 
+PASS Document.querySelectorAll: Invalid character: &gt; 
+PASS Document.querySelector: Invalid ID: # 
+PASS Document.querySelectorAll: Invalid ID: # 
+PASS Document.querySelector: Invalid group of selectors: div, 
+PASS Document.querySelectorAll: Invalid group of selectors: div, 
+PASS Document.querySelector: Invalid class: . 
+PASS Document.querySelectorAll: Invalid class: . 
+PASS Document.querySelector: Invalid class: .5cm 
+PASS Document.querySelectorAll: Invalid class: .5cm 
+PASS Document.querySelector: Invalid class: ..test 
+PASS Document.querySelectorAll: Invalid class: ..test 
+PASS Document.querySelector: Invalid class: .foo..quux 
+PASS Document.querySelectorAll: Invalid class: .foo..quux 
+PASS Document.querySelector: Invalid class: .bar. 
+PASS Document.querySelectorAll: Invalid class: .bar. 
+PASS Document.querySelector: Invalid combinator: div &amp; address, p 
+PASS Document.querySelectorAll: Invalid combinator: div &amp; address, p 
+PASS Document.querySelector: Invalid combinator: div &gt;&gt; address, p 
+PASS Document.querySelectorAll: Invalid combinator: div &gt;&gt; address, p 
+PASS Document.querySelector: Invalid combinator: div ++ address, p 
+PASS Document.querySelectorAll: Invalid combinator: div ++ address, p 
+PASS Document.querySelector: Invalid combinator: div ~~ address, p 
+PASS Document.querySelectorAll: Invalid combinator: div ~~ address, p 
+PASS Document.querySelector: Invalid [att=value] selector: [*=test] 
+PASS Document.querySelectorAll: Invalid [att=value] selector: [*=test] 
+PASS Document.querySelector: Invalid [att=value] selector: [*|*=test] 
+PASS Document.querySelectorAll: Invalid [att=value] selector: [*|*=test] 
+PASS Document.querySelector: Invalid [att=value] selector: [class= space unquoted ] 
+PASS Document.querySelectorAll: Invalid [att=value] selector: [class= space unquoted ] 
+PASS Document.querySelector: Unknown pseudo-class: div:example 
+PASS Document.querySelectorAll: Unknown pseudo-class: div:example 
+PASS Document.querySelector: Unknown pseudo-class: :example 
+PASS Document.querySelectorAll: Unknown pseudo-class: :example 
+PASS Document.querySelector: Unknown pseudo-element: div::example 
+PASS Document.querySelectorAll: Unknown pseudo-element: div::example 
+PASS Document.querySelector: Unknown pseudo-element: ::example 
+PASS Document.querySelectorAll: Unknown pseudo-element: ::example 
+PASS Document.querySelector: Invalid pseudo-element: :::before 
+PASS Document.querySelectorAll: Invalid pseudo-element: :::before 
+FAIL Document.querySelector: Undeclared namespace: ns|div assert_throws: function &quot;function () {
+        root.querySelector(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+FAIL Document.querySelectorAll: Undeclared namespace: ns|div assert_throws: function &quot;function () {
+        root.querySelectorAll(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+FAIL Document.querySelector: Undeclared namespace: :not(ns|div) assert_throws: function &quot;function () {
+        root.querySelector(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+FAIL Document.querySelectorAll: Undeclared namespace: :not(ns|div) assert_throws: function &quot;function () {
+        root.querySelectorAll(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+PASS Document.querySelector: Invalid namespace: ^|div 
+PASS Document.querySelectorAll: Invalid namespace: ^|div 
+PASS Document.querySelector: Invalid namespace: $|div 
+PASS Document.querySelectorAll: Invalid namespace: $|div 
+PASS Detached Element.querySelector: Empty String:  
+PASS Detached Element.querySelectorAll: Empty String:  
+PASS Detached Element.querySelector: Invalid character: [ 
+PASS Detached Element.querySelectorAll: Invalid character: [ 
+PASS Detached Element.querySelector: Invalid character: ] 
+PASS Detached Element.querySelectorAll: Invalid character: ] 
+PASS Detached Element.querySelector: Invalid character: ( 
+PASS Detached Element.querySelectorAll: Invalid character: ( 
+PASS Detached Element.querySelector: Invalid character: ) 
+PASS Detached Element.querySelectorAll: Invalid character: ) 
+PASS Detached Element.querySelector: Invalid character: { 
+PASS Detached Element.querySelectorAll: Invalid character: { 
+PASS Detached Element.querySelector: Invalid character: } 
+PASS Detached Element.querySelectorAll: Invalid character: } 
+PASS Detached Element.querySelector: Invalid character: &lt; 
+PASS Detached Element.querySelectorAll: Invalid character: &lt; 
+PASS Detached Element.querySelector: Invalid character: &gt; 
+PASS Detached Element.querySelectorAll: Invalid character: &gt; 
+PASS Detached Element.querySelector: Invalid ID: # 
+PASS Detached Element.querySelectorAll: Invalid ID: # 
+PASS Detached Element.querySelector: Invalid group of selectors: div, 
+PASS Detached Element.querySelectorAll: Invalid group of selectors: div, 
+PASS Detached Element.querySelector: Invalid class: . 
+PASS Detached Element.querySelectorAll: Invalid class: . 
+PASS Detached Element.querySelector: Invalid class: .5cm 
+PASS Detached Element.querySelectorAll: Invalid class: .5cm 
+PASS Detached Element.querySelector: Invalid class: ..test 
+PASS Detached Element.querySelectorAll: Invalid class: ..test 
+PASS Detached Element.querySelector: Invalid class: .foo..quux 
+PASS Detached Element.querySelectorAll: Invalid class: .foo..quux 
+PASS Detached Element.querySelector: Invalid class: .bar. 
+PASS Detached Element.querySelectorAll: Invalid class: .bar. 
+PASS Detached Element.querySelector: Invalid combinator: div &amp; address, p 
+PASS Detached Element.querySelectorAll: Invalid combinator: div &amp; address, p 
+PASS Detached Element.querySelector: Invalid combinator: div &gt;&gt; address, p 
+PASS Detached Element.querySelectorAll: Invalid combinator: div &gt;&gt; address, p 
+PASS Detached Element.querySelector: Invalid combinator: div ++ address, p 
+PASS Detached Element.querySelectorAll: Invalid combinator: div ++ address, p 
+PASS Detached Element.querySelector: Invalid combinator: div ~~ address, p 
+PASS Detached Element.querySelectorAll: Invalid combinator: div ~~ address, p 
+PASS Detached Element.querySelector: Invalid [att=value] selector: [*=test] 
+PASS Detached Element.querySelectorAll: Invalid [att=value] selector: [*=test] 
+PASS Detached Element.querySelector: Invalid [att=value] selector: [*|*=test] 
+PASS Detached Element.querySelectorAll: Invalid [att=value] selector: [*|*=test] 
+PASS Detached Element.querySelector: Invalid [att=value] selector: [class= space unquoted ] 
+PASS Detached Element.querySelectorAll: Invalid [att=value] selector: [class= space unquoted ] 
+PASS Detached Element.querySelector: Unknown pseudo-class: div:example 
+PASS Detached Element.querySelectorAll: Unknown pseudo-class: div:example 
+PASS Detached Element.querySelector: Unknown pseudo-class: :example 
+PASS Detached Element.querySelectorAll: Unknown pseudo-class: :example 
+PASS Detached Element.querySelector: Unknown pseudo-element: div::example 
+PASS Detached Element.querySelectorAll: Unknown pseudo-element: div::example 
+PASS Detached Element.querySelector: Unknown pseudo-element: ::example 
+PASS Detached Element.querySelectorAll: Unknown pseudo-element: ::example 
+PASS Detached Element.querySelector: Invalid pseudo-element: :::before 
+PASS Detached Element.querySelectorAll: Invalid pseudo-element: :::before 
+FAIL Detached Element.querySelector: Undeclared namespace: ns|div assert_throws: function &quot;function () {
+        root.querySelector(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+FAIL Detached Element.querySelectorAll: Undeclared namespace: ns|div assert_throws: function &quot;function () {
+        root.querySelectorAll(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+FAIL Detached Element.querySelector: Undeclared namespace: :not(ns|div) assert_throws: function &quot;function () {
+        root.querySelector(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+FAIL Detached Element.querySelectorAll: Undeclared namespace: :not(ns|div) assert_throws: function &quot;function () {
+        root.querySelectorAll(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+PASS Detached Element.querySelector: Invalid namespace: ^|div 
+PASS Detached Element.querySelectorAll: Invalid namespace: ^|div 
+PASS Detached Element.querySelector: Invalid namespace: $|div 
+PASS Detached Element.querySelectorAll: Invalid namespace: $|div 
+PASS Fragment.querySelector: Empty String:  
+PASS Fragment.querySelectorAll: Empty String:  
+PASS Fragment.querySelector: Invalid character: [ 
+PASS Fragment.querySelectorAll: Invalid character: [ 
+PASS Fragment.querySelector: Invalid character: ] 
+PASS Fragment.querySelectorAll: Invalid character: ] 
+PASS Fragment.querySelector: Invalid character: ( 
+PASS Fragment.querySelectorAll: Invalid character: ( 
+PASS Fragment.querySelector: Invalid character: ) 
+PASS Fragment.querySelectorAll: Invalid character: ) 
+PASS Fragment.querySelector: Invalid character: { 
+PASS Fragment.querySelectorAll: Invalid character: { 
+PASS Fragment.querySelector: Invalid character: } 
+PASS Fragment.querySelectorAll: Invalid character: } 
+PASS Fragment.querySelector: Invalid character: &lt; 
+PASS Fragment.querySelectorAll: Invalid character: &lt; 
+PASS Fragment.querySelector: Invalid character: &gt; 
+PASS Fragment.querySelectorAll: Invalid character: &gt; 
+PASS Fragment.querySelector: Invalid ID: # 
+PASS Fragment.querySelectorAll: Invalid ID: # 
+PASS Fragment.querySelector: Invalid group of selectors: div, 
+PASS Fragment.querySelectorAll: Invalid group of selectors: div, 
+PASS Fragment.querySelector: Invalid class: . 
+PASS Fragment.querySelectorAll: Invalid class: . 
+PASS Fragment.querySelector: Invalid class: .5cm 
+PASS Fragment.querySelectorAll: Invalid class: .5cm 
+PASS Fragment.querySelector: Invalid class: ..test 
+PASS Fragment.querySelectorAll: Invalid class: ..test 
+PASS Fragment.querySelector: Invalid class: .foo..quux 
+PASS Fragment.querySelectorAll: Invalid class: .foo..quux 
+PASS Fragment.querySelector: Invalid class: .bar. 
+PASS Fragment.querySelectorAll: Invalid class: .bar. 
+PASS Fragment.querySelector: Invalid combinator: div &amp; address, p 
+PASS Fragment.querySelectorAll: Invalid combinator: div &amp; address, p 
+PASS Fragment.querySelector: Invalid combinator: div &gt;&gt; address, p 
+PASS Fragment.querySelectorAll: Invalid combinator: div &gt;&gt; address, p 
+PASS Fragment.querySelector: Invalid combinator: div ++ address, p 
+PASS Fragment.querySelectorAll: Invalid combinator: div ++ address, p 
+PASS Fragment.querySelector: Invalid combinator: div ~~ address, p 
+PASS Fragment.querySelectorAll: Invalid combinator: div ~~ address, p 
+PASS Fragment.querySelector: Invalid [att=value] selector: [*=test] 
+PASS Fragment.querySelectorAll: Invalid [att=value] selector: [*=test] 
+PASS Fragment.querySelector: Invalid [att=value] selector: [*|*=test] 
+PASS Fragment.querySelectorAll: Invalid [att=value] selector: [*|*=test] 
+PASS Fragment.querySelector: Invalid [att=value] selector: [class= space unquoted ] 
+PASS Fragment.querySelectorAll: Invalid [att=value] selector: [class= space unquoted ] 
+PASS Fragment.querySelector: Unknown pseudo-class: div:example 
+PASS Fragment.querySelectorAll: Unknown pseudo-class: div:example 
+PASS Fragment.querySelector: Unknown pseudo-class: :example 
+PASS Fragment.querySelectorAll: Unknown pseudo-class: :example 
+PASS Fragment.querySelector: Unknown pseudo-element: div::example 
+PASS Fragment.querySelectorAll: Unknown pseudo-element: div::example 
+PASS Fragment.querySelector: Unknown pseudo-element: ::example 
+PASS Fragment.querySelectorAll: Unknown pseudo-element: ::example 
+PASS Fragment.querySelector: Invalid pseudo-element: :::before 
+PASS Fragment.querySelectorAll: Invalid pseudo-element: :::before 
+FAIL Fragment.querySelector: Undeclared namespace: ns|div assert_throws: function &quot;function () {
+        root.querySelector(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+FAIL Fragment.querySelectorAll: Undeclared namespace: ns|div assert_throws: function &quot;function () {
+        root.querySelectorAll(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+FAIL Fragment.querySelector: Undeclared namespace: :not(ns|div) assert_throws: function &quot;function () {
+        root.querySelector(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+FAIL Fragment.querySelectorAll: Undeclared namespace: :not(ns|div) assert_throws: function &quot;function () {
+        root.querySelectorAll(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+PASS Fragment.querySelector: Invalid namespace: ^|div 
+PASS Fragment.querySelectorAll: Invalid namespace: ^|div 
+PASS Fragment.querySelector: Invalid namespace: $|div 
+PASS Fragment.querySelectorAll: Invalid namespace: $|div 
+PASS In-document Element.querySelector: Empty String:  
+PASS In-document Element.querySelectorAll: Empty String:  
+PASS In-document Element.querySelector: Invalid character: [ 
+PASS In-document Element.querySelectorAll: Invalid character: [ 
+PASS In-document Element.querySelector: Invalid character: ] 
+PASS In-document Element.querySelectorAll: Invalid character: ] 
+PASS In-document Element.querySelector: Invalid character: ( 
+PASS In-document Element.querySelectorAll: Invalid character: ( 
+PASS In-document Element.querySelector: Invalid character: ) 
+PASS In-document Element.querySelectorAll: Invalid character: ) 
+PASS In-document Element.querySelector: Invalid character: { 
+PASS In-document Element.querySelectorAll: Invalid character: { 
+PASS In-document Element.querySelector: Invalid character: } 
+PASS In-document Element.querySelectorAll: Invalid character: } 
+PASS In-document Element.querySelector: Invalid character: &lt; 
+PASS In-document Element.querySelectorAll: Invalid character: &lt; 
+PASS In-document Element.querySelector: Invalid character: &gt; 
+PASS In-document Element.querySelectorAll: Invalid character: &gt; 
+PASS In-document Element.querySelector: Invalid ID: # 
+PASS In-document Element.querySelectorAll: Invalid ID: # 
+PASS In-document Element.querySelector: Invalid group of selectors: div, 
+PASS In-document Element.querySelectorAll: Invalid group of selectors: div, 
+PASS In-document Element.querySelector: Invalid class: . 
+PASS In-document Element.querySelectorAll: Invalid class: . 
+PASS In-document Element.querySelector: Invalid class: .5cm 
+PASS In-document Element.querySelectorAll: Invalid class: .5cm 
+PASS In-document Element.querySelector: Invalid class: ..test 
+PASS In-document Element.querySelectorAll: Invalid class: ..test 
+PASS In-document Element.querySelector: Invalid class: .foo..quux 
+PASS In-document Element.querySelectorAll: Invalid class: .foo..quux 
+PASS In-document Element.querySelector: Invalid class: .bar. 
+PASS In-document Element.querySelectorAll: Invalid class: .bar. 
+PASS In-document Element.querySelector: Invalid combinator: div &amp; address, p 
+PASS In-document Element.querySelectorAll: Invalid combinator: div &amp; address, p 
+PASS In-document Element.querySelector: Invalid combinator: div &gt;&gt; address, p 
+PASS In-document Element.querySelectorAll: Invalid combinator: div &gt;&gt; address, p 
+PASS In-document Element.querySelector: Invalid combinator: div ++ address, p 
+PASS In-document Element.querySelectorAll: Invalid combinator: div ++ address, p 
+PASS In-document Element.querySelector: Invalid combinator: div ~~ address, p 
+PASS In-document Element.querySelectorAll: Invalid combinator: div ~~ address, p 
+PASS In-document Element.querySelector: Invalid [att=value] selector: [*=test] 
+PASS In-document Element.querySelectorAll: Invalid [att=value] selector: [*=test] 
+PASS In-document Element.querySelector: Invalid [att=value] selector: [*|*=test] 
+PASS In-document Element.querySelectorAll: Invalid [att=value] selector: [*|*=test] 
+PASS In-document Element.querySelector: Invalid [att=value] selector: [class= space unquoted ] 
+PASS In-document Element.querySelectorAll: Invalid [att=value] selector: [class= space unquoted ] 
+PASS In-document Element.querySelector: Unknown pseudo-class: div:example 
+PASS In-document Element.querySelectorAll: Unknown pseudo-class: div:example 
+PASS In-document Element.querySelector: Unknown pseudo-class: :example 
+PASS In-document Element.querySelectorAll: Unknown pseudo-class: :example 
+PASS In-document Element.querySelector: Unknown pseudo-element: div::example 
+PASS In-document Element.querySelectorAll: Unknown pseudo-element: div::example 
+PASS In-document Element.querySelector: Unknown pseudo-element: ::example 
+PASS In-document Element.querySelectorAll: Unknown pseudo-element: ::example 
+PASS In-document Element.querySelector: Invalid pseudo-element: :::before 
+PASS In-document Element.querySelectorAll: Invalid pseudo-element: :::before 
+FAIL In-document Element.querySelector: Undeclared namespace: ns|div assert_throws: function &quot;function () {
+        root.querySelector(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+FAIL In-document Element.querySelectorAll: Undeclared namespace: ns|div assert_throws: function &quot;function () {
+        root.querySelectorAll(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+FAIL In-document Element.querySelector: Undeclared namespace: :not(ns|div) assert_throws: function &quot;function () {
+        root.querySelector(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+FAIL In-document Element.querySelectorAll: Undeclared namespace: :not(ns|div) assert_throws: function &quot;function () {
+        root.querySelectorAll(q)
+      }&quot; threw object &quot;NamespaceError (DOM Exception 14): The operation is not a...&quot; that is not a DOMException SyntaxError: property &quot;code&quot; is equal to 14, expected 12
+PASS In-document Element.querySelector: Invalid namespace: ^|div 
+PASS In-document Element.querySelectorAll: Invalid namespace: ^|div 
+PASS In-document Element.querySelector: Invalid namespace: $|div 
+PASS In-document Element.querySelectorAll: Invalid namespace: $|div 
+PASS Document.querySelectorAll: Type selector, matching html element: html 
+PASS Document.querySelector: Type selector, matching html element: html 
+PASS Document.querySelectorAll: Type selector, matching body element: body 
+PASS Document.querySelector: Type selector, matching body element: body 
+PASS Document.querySelectorAll: Universal selector, matching all children of element with specified ID: #universal&gt;* 
+PASS Document.querySelector: Universal selector, matching all children of element with specified ID: #universal&gt;* 
+PASS Document.querySelectorAll: Universal selector, matching all grandchildren of element with specified ID: #universal&gt;*&gt;* 
+PASS Document.querySelector: Universal selector, matching all grandchildren of element with specified ID: #universal&gt;*&gt;* 
+PASS Document.querySelectorAll: Universal selector, matching all children of empty element with specified ID: #empty&gt;* 
+PASS Document.querySelector: Universal selector, matching all children of empty element with specified ID: #empty&gt;* 
+PASS Document.querySelectorAll: Universal selector, matching all descendants of element with specified ID: #universal * 
+PASS Document.querySelector: Universal selector, matching all descendants of element with specified ID: #universal * 
+PASS Document.querySelectorAll: Attribute presence selector, matching align attribute with value: .attr-presence-div1[align] 
+PASS Document.querySelector: Attribute presence selector, matching align attribute with value: .attr-presence-div1[align] 
+PASS Document.querySelectorAll: Attribute presence selector, matching align attribute with empty value: .attr-presence-div2[align] 
+PASS Document.querySelector: Attribute presence selector, matching align attribute with empty value: .attr-presence-div2[align] 
+PASS Document.querySelectorAll: Attribute presence selector, not matching title attribute, case sensitivity: #attr-presence [TiTlE] 
+PASS Document.querySelector: Attribute presence selector, not matching title attribute, case sensitivity: #attr-presence [TiTlE] 
+PASS Document.querySelectorAll: Attribute presence selector, matching custom data-* attribute: [data-attr-presence] 
+PASS Document.querySelector: Attribute presence selector, matching custom data-* attribute: [data-attr-presence] 
+PASS Document.querySelectorAll: Attribute presence selector, not matching attribute with similar name: .attr-presence-div3[align], .attr-presence-div4[align] 
+PASS Document.querySelector: Attribute presence selector, not matching attribute with similar name: .attr-presence-div3[align], .attr-presence-div4[align] 
+PASS Document.querySelectorAll: Attribute presence selector, matching attribute with non-ASCII characters: ul[data-中文] 
+PASS Document.querySelector: Attribute presence selector, matching attribute with non-ASCII characters: ul[data-中文] 
+PASS Document.querySelectorAll: Attribute presence selector, not matching default option without selected attribute: #attr-presence-select1 option[selected] 
+PASS Document.querySelector: Attribute presence selector, not matching default option without selected attribute: #attr-presence-select1 option[selected] 
+PASS Document.querySelectorAll: Attribute presence selector, matching option with selected attribute: #attr-presence-select2 option[selected] 
+PASS Document.querySelector: Attribute presence selector, matching option with selected attribute: #attr-presence-select2 option[selected] 
+PASS Document.querySelectorAll: Attribute presence selector, matching multiple options with selected attributes: #attr-presence-select3 option[selected] 
+PASS Document.querySelector: Attribute presence selector, matching multiple options with selected attributes: #attr-presence-select3 option[selected] 
+PASS Document.querySelectorAll: Attribute value selector, matching align attribute with value: #attr-value [align=&quot;center&quot;] 
+PASS Document.querySelector: Attribute value selector, matching align attribute with value: #attr-value [align=&quot;center&quot;] 
+PASS Document.querySelectorAll: Attribute value selector, matching align attribute with empty value: #attr-value [align=&quot;&quot;] 
+PASS Document.querySelector: Attribute value selector, matching align attribute with empty value: #attr-value [align=&quot;&quot;] 
+PASS Document.querySelectorAll: Attribute value selector, not matching align attribute with partial value: #attr-value [align=&quot;c&quot;] 
+PASS Document.querySelector: Attribute value selector, not matching align attribute with partial value: #attr-value [align=&quot;c&quot;] 
+PASS Document.querySelectorAll: Attribute value selector, not matching align attribute with incorrect value: #attr-value [align=&quot;centera&quot;] 
+PASS Document.querySelector: Attribute value selector, not matching align attribute with incorrect value: #attr-value [align=&quot;centera&quot;] 
+PASS Document.querySelectorAll: Attribute value selector, matching custom data-* attribute with unicode escaped value: [data-attr-value=&quot;\e9&quot;] 
+PASS Document.querySelector: Attribute value selector, matching custom data-* attribute with unicode escaped value: [data-attr-value=&quot;\e9&quot;] 
+PASS Document.querySelectorAll: Attribute value selector, matching custom data-* attribute with escaped character: [data-attr-value_foo=&quot;\e9&quot;] 
+PASS Document.querySelector: Attribute value selector, matching custom data-* attribute with escaped character: [data-attr-value_foo=&quot;\e9&quot;] 
+PASS Document.querySelectorAll: Attribute value selector with single-quoted value, matching multiple inputs with type attributes: #attr-value input[type='hidden'],#attr-value input[type='radio'] 
+PASS Document.querySelector: Attribute value selector with single-quoted value, matching multiple inputs with type attributes: #attr-value input[type='hidden'],#attr-value input[type='radio'] 
+PASS Document.querySelectorAll: Attribute value selector with double-quoted value, matching multiple inputs with type attributes: #attr-value input[type=&quot;hidden&quot;],#attr-value input[type='radio'] 
+PASS Document.querySelector: Attribute value selector with double-quoted value, matching multiple inputs with type attributes: #attr-value input[type=&quot;hidden&quot;],#attr-value input[type='radio'] 
+PASS Document.querySelectorAll: Attribute value selector with unquoted value, matching multiple inputs with type attributes: #attr-value input[type=hidden],#attr-value input[type=radio] 
+PASS Document.querySelector: Attribute value selector with unquoted value, matching multiple inputs with type attributes: #attr-value input[type=hidden],#attr-value input[type=radio] 
+PASS Document.querySelectorAll: Attribute value selector, matching attribute with value using non-ASCII characters: [data-attr-value=中文] 
+PASS Document.querySelector: Attribute value selector, matching attribute with value using non-ASCII characters: [data-attr-value=中文] 
+PASS Document.querySelectorAll: Attribute whitespace-separated list selector, matching class attribute with value: #attr-whitespace [class~=&quot;div1&quot;] 
+PASS Document.querySelector: Attribute whitespace-separated list selector, matching class attribute with value: #attr-whitespace [class~=&quot;div1&quot;] 
+PASS Document.querySelectorAll: Attribute whitespace-separated list selector, not matching class attribute with empty value: #attr-whitespace [class~=&quot;&quot;] 
+PASS Document.querySelector: Attribute whitespace-separated list selector, not matching class attribute with empty value: #attr-whitespace [class~=&quot;&quot;] 
+PASS Document.querySelectorAll: Attribute whitespace-separated list selector, not matching class attribute with partial value: [data-attr-whitespace~=&quot;div&quot;] 
+PASS Document.querySelector: Attribute whitespace-separated list selector, not matching class attribute with partial value: [data-attr-whitespace~=&quot;div&quot;] 
+PASS Document.querySelectorAll: Attribute whitespace-separated list selector, matching custom data-* attribute with unicode escaped value: [data-attr-whitespace~=&quot;\0000e9&quot;] 
+PASS Document.querySelector: Attribute whitespace-separated list selector, matching custom data-* attribute with unicode escaped value: [data-attr-whitespace~=&quot;\0000e9&quot;] 
+PASS Document.querySelectorAll: Attribute whitespace-separated list selector, matching custom data-* attribute with escaped character: [data-attr-whitespace_foo~=&quot;\e9&quot;] 
+PASS Document.querySelector: Attribute whitespace-separated list selector, matching custom data-* attribute with escaped character: [data-attr-whitespace_foo~=&quot;\e9&quot;] 
+PASS Document.querySelectorAll: Attribute whitespace-separated list selector with single-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~='bookmark'],  #attr-whitespace a[rel~='nofollow'] 
+PASS Document.querySelector: Attribute whitespace-separated list selector with single-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~='bookmark'],  #attr-whitespace a[rel~='nofollow'] 
+PASS Document.querySelectorAll: Attribute whitespace-separated list selector with double-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=&quot;bookmark&quot;],#attr-whitespace a[rel~='nofollow'] 
+PASS Document.querySelector: Attribute whitespace-separated list selector with double-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=&quot;bookmark&quot;],#attr-whitespace a[rel~='nofollow'] 
+PASS Document.querySelectorAll: Attribute whitespace-separated list selector with unquoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=bookmark],    #attr-whitespace a[rel~=nofollow] 
+PASS Document.querySelector: Attribute whitespace-separated list selector with unquoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=bookmark],    #attr-whitespace a[rel~=nofollow] 
+PASS Document.querySelectorAll: Attribute whitespace-separated list selector with double-quoted value, not matching value with space: #attr-whitespace a[rel~=&quot;book mark&quot;] 
+PASS Document.querySelector: Attribute whitespace-separated list selector with double-quoted value, not matching value with space: #attr-whitespace a[rel~=&quot;book mark&quot;] 
+PASS Document.querySelectorAll: Attribute whitespace-separated list selector, matching title attribute with value using non-ASCII characters: #attr-whitespace [title~=中文] 
+PASS Document.querySelector: Attribute whitespace-separated list selector, matching title attribute with value using non-ASCII characters: #attr-whitespace [title~=中文] 
+PASS Document.querySelectorAll: Attribute hyphen-separated list selector, not matching unspecified lang attribute: #attr-hyphen-div1[lang|=&quot;en&quot;] 
+PASS Document.querySelector: Attribute hyphen-separated list selector, not matching unspecified lang attribute: #attr-hyphen-div1[lang|=&quot;en&quot;] 
+PASS Document.querySelectorAll: Attribute hyphen-separated list selector, matching lang attribute with exact value: #attr-hyphen-div2[lang|=&quot;fr&quot;] 
+PASS Document.querySelector: Attribute hyphen-separated list selector, matching lang attribute with exact value: #attr-hyphen-div2[lang|=&quot;fr&quot;] 
+PASS Document.querySelectorAll: Attribute hyphen-separated list selector, matching lang attribute with partial value: #attr-hyphen-div3[lang|=&quot;en&quot;] 
+PASS Document.querySelector: Attribute hyphen-separated list selector, matching lang attribute with partial value: #attr-hyphen-div3[lang|=&quot;en&quot;] 
+PASS Document.querySelectorAll: Attribute hyphen-separated list selector, not matching incorrect value: #attr-hyphen-div4[lang|=&quot;es-AR&quot;] 
+PASS Document.querySelector: Attribute hyphen-separated list selector, not matching incorrect value: #attr-hyphen-div4[lang|=&quot;es-AR&quot;] 
+PASS Document.querySelectorAll: Attribute begins with selector, matching href attributes beginning with specified substring: #attr-begins a[href^=&quot;http://www&quot;] 
+PASS Document.querySelector: Attribute begins with selector, matching href attributes beginning with specified substring: #attr-begins a[href^=&quot;http://www&quot;] 
+PASS Document.querySelectorAll: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^=&quot;en-&quot;] 
+PASS Document.querySelector: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^=&quot;en-&quot;] 
+PASS Document.querySelectorAll: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
+PASS Document.querySelector: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
+PASS Document.querySelectorAll: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=' apple'] 
+PASS Document.querySelector: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=' apple'] 
+PASS Document.querySelectorAll: Attribute begins with selector with double-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=&quot; apple&quot;] 
+PASS Document.querySelector: Attribute begins with selector with double-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=&quot; apple&quot;] 
+PASS Document.querySelectorAll: Attribute begins with selector with unquoted value, not matching class attribute not beginning with specified substring: #attr-begins [class^= apple] 
+PASS Document.querySelector: Attribute begins with selector with unquoted value, not matching class attribute not beginning with specified substring: #attr-begins [class^= apple] 
+PASS Document.querySelectorAll: Attribute ends with selector, matching href attributes ending with specified substring: #attr-ends a[href$=&quot;.org&quot;] 
+PASS Document.querySelector: Attribute ends with selector, matching href attributes ending with specified substring: #attr-ends a[href$=&quot;.org&quot;] 
+PASS Document.querySelectorAll: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$=&quot;-CH&quot;] 
+PASS Document.querySelector: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$=&quot;-CH&quot;] 
+PASS Document.querySelectorAll: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
+PASS Document.querySelector: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
+PASS Document.querySelectorAll: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring: #attr-ends [class$='apple '] 
+PASS Document.querySelector: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring: #attr-ends [class$='apple '] 
+PASS Document.querySelectorAll: Attribute ends with selector with double-quoted value, matching class attribute ending with specified substring: #attr-ends [class$=&quot;apple &quot;] 
+PASS Document.querySelector: Attribute ends with selector with double-quoted value, matching class attribute ending with specified substring: #attr-ends [class$=&quot;apple &quot;] 
+PASS Document.querySelectorAll: Attribute ends with selector with unquoted value, not matching class attribute not ending with specified substring: #attr-ends [class$=apple ] 
+PASS Document.querySelector: Attribute ends with selector with unquoted value, not matching class attribute not ending with specified substring: #attr-ends [class$=apple ] 
+PASS Document.querySelectorAll: Attribute contains selector, matching href attributes beginning with specified substring: #attr-contains a[href*=&quot;http://www&quot;] 
+PASS Document.querySelector: Attribute contains selector, matching href attributes beginning with specified substring: #attr-contains a[href*=&quot;http://www&quot;] 
+PASS Document.querySelectorAll: Attribute contains selector, matching href attributes ending with specified substring: #attr-contains a[href*=&quot;.org&quot;] 
+PASS Document.querySelector: Attribute contains selector, matching href attributes ending with specified substring: #attr-contains a[href*=&quot;.org&quot;] 
+PASS Document.querySelectorAll: Attribute contains selector, matching href attributes containing specified substring: #attr-contains a[href*=&quot;.example.&quot;] 
+PASS Document.querySelector: Attribute contains selector, matching href attributes containing specified substring: #attr-contains a[href*=&quot;.example.&quot;] 
+PASS Document.querySelectorAll: Attribute contains selector, matching lang attributes beginning with specified substring, : #attr-contains [lang*=&quot;en-&quot;] 
+PASS Document.querySelector: Attribute contains selector, matching lang attributes beginning with specified substring, : #attr-contains [lang*=&quot;en-&quot;] 
+PASS Document.querySelectorAll: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*=&quot;-CH&quot;] 
+PASS Document.querySelector: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*=&quot;-CH&quot;] 
+PASS Document.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
+PASS Document.querySelector: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
+PASS Document.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring: #attr-contains [class*='orange '] 
+PASS Document.querySelector: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring: #attr-contains [class*='orange '] 
+PASS Document.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute containing specified substring: #attr-contains [class*='ple banana ora'] 
+PASS Document.querySelector: Attribute contains selector with single-quoted value, matching class attribute containing specified substring: #attr-contains [class*='ple banana ora'] 
+PASS Document.querySelectorAll: Attribute contains selector with double-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=&quot; apple&quot;] 
+PASS Document.querySelector: Attribute contains selector with double-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=&quot; apple&quot;] 
+PASS Document.querySelectorAll: Attribute contains selector with double-quoted value, matching class attribute ending with specified substring: #attr-contains [class*=&quot;orange &quot;] 
+PASS Document.querySelector: Attribute contains selector with double-quoted value, matching class attribute ending with specified substring: #attr-contains [class*=&quot;orange &quot;] 
+PASS Document.querySelectorAll: Attribute contains selector with double-quoted value, matching class attribute containing specified substring: #attr-contains [class*=&quot;ple banana ora&quot;] 
+PASS Document.querySelector: Attribute contains selector with double-quoted value, matching class attribute containing specified substring: #attr-contains [class*=&quot;ple banana ora&quot;] 
+PASS Document.querySelectorAll: Attribute contains selector with unquoted value, matching class attribute beginning with specified substring: #attr-contains [class*= apple] 
+PASS Document.querySelector: Attribute contains selector with unquoted value, matching class attribute beginning with specified substring: #attr-contains [class*= apple] 
+PASS Document.querySelectorAll: Attribute contains selector with unquoted value, matching class attribute ending with specified substring: #attr-contains [class*=orange ] 
+PASS Document.querySelector: Attribute contains selector with unquoted value, matching class attribute ending with specified substring: #attr-contains [class*=orange ] 
+PASS Document.querySelectorAll: Attribute contains selector with unquoted value, matching class attribute containing specified substring: #attr-contains [class*= banana ] 
+PASS Document.querySelector: Attribute contains selector with unquoted value, matching class attribute containing specified substring: #attr-contains [class*= banana ] 
+PASS Document.querySelectorAll: :root pseudo-class selector, matching document root element: :root 
+PASS Document.querySelector: :root pseudo-class selector, matching document root element: :root 
+PASS Document.querySelectorAll: :nth-child selector, matching the third child element: #pseudo-nth-table1 :nth-child(3) 
+PASS Document.querySelector: :nth-child selector, matching the third child element: #pseudo-nth-table1 :nth-child(3) 
+PASS Document.querySelectorAll: :nth-child selector, matching every third child element: #pseudo-nth li:nth-child(3n) 
+PASS Document.querySelector: :nth-child selector, matching every third child element: #pseudo-nth li:nth-child(3n) 
+PASS Document.querySelectorAll: :nth-child selector, matching every second child element, starting from the fourth: #pseudo-nth li:nth-child(2n+4) 
+PASS Document.querySelector: :nth-child selector, matching every second child element, starting from the fourth: #pseudo-nth li:nth-child(2n+4) 
+PASS Document.querySelectorAll: :nth-child selector, matching every fourth child element, starting from the third: #pseudo-nth-p1 :nth-child(4n-1) 
+PASS Document.querySelector: :nth-child selector, matching every fourth child element, starting from the third: #pseudo-nth-p1 :nth-child(4n-1) 
+PASS Document.querySelectorAll: :nth-last-child selector, matching the third last child element: #pseudo-nth-table1 :nth-last-child(3) 
+PASS Document.querySelector: :nth-last-child selector, matching the third last child element: #pseudo-nth-table1 :nth-last-child(3) 
+PASS Document.querySelectorAll: :nth-last-child selector, matching every third child element from the end: #pseudo-nth li:nth-last-child(3n) 
+PASS Document.querySelector: :nth-last-child selector, matching every third child element from the end: #pseudo-nth li:nth-last-child(3n) 
+PASS Document.querySelectorAll: :nth-last-child selector, matching every second child element from the end, starting from the fourth last: #pseudo-nth li:nth-last-child(2n+4) 
+PASS Document.querySelector: :nth-last-child selector, matching every second child element from the end, starting from the fourth last: #pseudo-nth li:nth-last-child(2n+4) 
+PASS Document.querySelectorAll: :nth-last-child selector, matching every fourth element from the end, starting from the third last: #pseudo-nth-p1 :nth-last-child(4n-1) 
+PASS Document.querySelector: :nth-last-child selector, matching every fourth element from the end, starting from the third last: #pseudo-nth-p1 :nth-last-child(4n-1) 
+PASS Document.querySelectorAll: :nth-of-type selector, matching the third em element: #pseudo-nth-p1 em:nth-of-type(3) 
+PASS Document.querySelector: :nth-of-type selector, matching the third em element: #pseudo-nth-p1 em:nth-of-type(3) 
+PASS Document.querySelectorAll: :nth-of-type selector, matching every second element of their type: #pseudo-nth-p1 :nth-of-type(2n) 
+PASS Document.querySelector: :nth-of-type selector, matching every second element of their type: #pseudo-nth-p1 :nth-of-type(2n) 
+PASS Document.querySelectorAll: :nth-of-type selector, matching every second elemetn of their type, starting from the first: #pseudo-nth-p1 span:nth-of-type(2n-1) 
+PASS Document.querySelector: :nth-of-type selector, matching every second elemetn of their type, starting from the first: #pseudo-nth-p1 span:nth-of-type(2n-1) 
+PASS Document.querySelectorAll: :nth-last-of-type selector, matching the thrid last em element: #pseudo-nth-p1 em:nth-last-of-type(3) 
+PASS Document.querySelector: :nth-last-of-type selector, matching the thrid last em element: #pseudo-nth-p1 em:nth-last-of-type(3) 
+PASS Document.querySelectorAll: :nth-last-of-type selector, matching every second last element of their type: #pseudo-nth-p1 :nth-last-of-type(2n) 
+PASS Document.querySelector: :nth-last-of-type selector, matching every second last element of their type: #pseudo-nth-p1 :nth-last-of-type(2n) 
+PASS Document.querySelectorAll: :nth-last-of-type selector, matching every second last element of their type, starting from the last: #pseudo-nth-p1 span:nth-last-of-type(2n-1) 
+PASS Document.querySelector: :nth-last-of-type selector, matching every second last element of their type, starting from the last: #pseudo-nth-p1 span:nth-last-of-type(2n-1) 
+PASS Document.querySelectorAll: :first-of-type selector, matching the first em element: #pseudo-nth-p1 em:first-of-type 
+PASS Document.querySelector: :first-of-type selector, matching the first em element: #pseudo-nth-p1 em:first-of-type 
+PASS Document.querySelectorAll: :first-of-type selector, matching the first of every type of element: #pseudo-nth-p1 :first-of-type 
+PASS Document.querySelector: :first-of-type selector, matching the first of every type of element: #pseudo-nth-p1 :first-of-type 
+PASS Document.querySelectorAll: :first-of-type selector, matching the first td element in each table row: #pseudo-nth-table1 tr :first-of-type 
+PASS Document.querySelector: :first-of-type selector, matching the first td element in each table row: #pseudo-nth-table1 tr :first-of-type 
+PASS Document.querySelectorAll: :last-of-type selector, matching the last em elemnet: #pseudo-nth-p1 em:last-of-type 
+PASS Document.querySelector: :last-of-type selector, matching the last em elemnet: #pseudo-nth-p1 em:last-of-type 
+PASS Document.querySelectorAll: :last-of-type selector, matching the last of every type of element: #pseudo-nth-p1 :last-of-type 
+PASS Document.querySelector: :last-of-type selector, matching the last of every type of element: #pseudo-nth-p1 :last-of-type 
+PASS Document.querySelectorAll: :last-of-type selector, matching the last td element in each table row: #pseudo-nth-table1 tr :last-of-type 
+PASS Document.querySelector: :last-of-type selector, matching the last td element in each table row: #pseudo-nth-table1 tr :last-of-type 
+PASS Document.querySelectorAll: :first-child pseudo-class selector, matching first child div element: #pseudo-first-child div:first-child 
+PASS Document.querySelector: :first-child pseudo-class selector, matching first child div element: #pseudo-first-child div:first-child 
+PASS Document.querySelectorAll: :first-child pseudo-class selector, doesn't match non-first-child elements: .pseudo-first-child-div2:first-child, .pseudo-first-child-div3:first-child 
+PASS Document.querySelector: :first-child pseudo-class selector, doesn't match non-first-child elements: .pseudo-first-child-div2:first-child, .pseudo-first-child-div3:first-child 
+PASS Document.querySelectorAll: :first-child pseudo-class selector, matching first-child of multiple elements: #pseudo-first-child span:first-child 
+PASS Document.querySelector: :first-child pseudo-class selector, matching first-child of multiple elements: #pseudo-first-child span:first-child 
+PASS Document.querySelectorAll: :last-child pseudo-class selector, matching last child div element: #pseudo-last-child div:last-child 
+PASS Document.querySelector: :last-child pseudo-class selector, matching last child div element: #pseudo-last-child div:last-child 
+PASS Document.querySelectorAll: :last-child pseudo-class selector, doesn't match non-last-child elements: .pseudo-last-child-div1:last-child, .pseudo-last-child-div2:first-child 
+PASS Document.querySelector: :last-child pseudo-class selector, doesn't match non-last-child elements: .pseudo-last-child-div1:last-child, .pseudo-last-child-div2:first-child 
+PASS Document.querySelectorAll: :last-child pseudo-class selector, matching first-child of multiple elements: #pseudo-last-child span:last-child 
+PASS Document.querySelector: :last-child pseudo-class selector, matching first-child of multiple elements: #pseudo-last-child span:last-child 
+PASS Document.querySelectorAll: :pseudo-only-child pseudo-class selector, matching all only-child elements: #pseudo-only :only-child 
+PASS Document.querySelector: :pseudo-only-child pseudo-class selector, matching all only-child elements: #pseudo-only :only-child 
+PASS Document.querySelectorAll: :pseudo-only-child pseudo-class selector, matching only-child em elements: #pseudo-only em:only-child 
+PASS Document.querySelector: :pseudo-only-child pseudo-class selector, matching only-child em elements: #pseudo-only em:only-child 
+PASS Document.querySelectorAll: :pseudo-only-of-type pseudo-class selector, matching all elements with no siblings of the same type: #pseudo-only :only-of-type 
+PASS Document.querySelector: :pseudo-only-of-type pseudo-class selector, matching all elements with no siblings of the same type: #pseudo-only :only-of-type 
+PASS Document.querySelectorAll: :pseudo-only-of-type pseudo-class selector, matching em elements with no siblings of the same type: #pseudo-only em:only-of-type 
+PASS Document.querySelector: :pseudo-only-of-type pseudo-class selector, matching em elements with no siblings of the same type: #pseudo-only em:only-of-type 
+PASS Document.querySelectorAll: :empty pseudo-class selector, matching empty p elements: #pseudo-empty p:empty 
+PASS Document.querySelector: :empty pseudo-class selector, matching empty p elements: #pseudo-empty p:empty 
+PASS Document.querySelectorAll: :empty pseudo-class selector, matching all empty elements: #pseudo-empty :empty 
+PASS Document.querySelector: :empty pseudo-class selector, matching all empty elements: #pseudo-empty :empty 
+PASS Document.querySelectorAll: :link and :visited pseudo-class selectors, matching a and area elements with href attributes: #pseudo-link :link, #pseudo-link :visited 
+PASS Document.querySelector: :link and :visited pseudo-class selectors, matching a and area elements with href attributes: #pseudo-link :link, #pseudo-link :visited 
+PASS Document.querySelectorAll: :link and :visited pseudo-class selectors, matching link elements with href attributes: #head :link, #head :visited 
+PASS Document.querySelector: :link and :visited pseudo-class selectors, matching link elements with href attributes: #head :link, #head :visited 
+PASS Document.querySelectorAll: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target 
+PASS Document.querySelector: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target 
+PASS Document.querySelectorAll: :lang pseudo-class selector, matching inherited language: #pseudo-lang-div1:lang(en) 
+PASS Document.querySelector: :lang pseudo-class selector, matching inherited language: #pseudo-lang-div1:lang(en) 
+PASS Document.querySelectorAll: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr) 
+PASS Document.querySelector: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr) 
+PASS Document.querySelectorAll: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en) 
+PASS Document.querySelector: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en) 
+PASS Document.querySelectorAll: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR) 
+PASS Document.querySelector: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR) 
+PASS Document.querySelectorAll: :enabled pseudo-class selector, matching all enabled form controls: #pseudo-ui :enabled 
+PASS Document.querySelector: :enabled pseudo-class selector, matching all enabled form controls: #pseudo-ui :enabled 
+PASS Document.querySelectorAll: :enabled pseudo-class selector, matching all disabled form controls: #pseudo-ui :disabled 
+PASS Document.querySelector: :enabled pseudo-class selector, matching all disabled form controls: #pseudo-ui :disabled 
+PASS Document.querySelectorAll: :checked pseudo-class selector, matching checked radio buttons and checkboxes: #pseudo-ui :checked 
+PASS Document.querySelector: :checked pseudo-class selector, matching checked radio buttons and checkboxes: #pseudo-ui :checked 
+PASS Document.querySelectorAll: :not pseudo-class selector, matching : #not&gt;:not(div) 
+PASS Document.querySelector: :not pseudo-class selector, matching : #not&gt;:not(div) 
+PASS Document.querySelectorAll: :not pseudo-class selector, matching : #not * :not(:first-child) 
+PASS Document.querySelector: :not pseudo-class selector, matching : #not * :not(:first-child) 
+PASS Document.querySelectorAll: :not pseudo-class selector, matching nothing: :not(*) 
+PASS Document.querySelector: :not pseudo-class selector, matching nothing: :not(*) 
+PASS Document.querySelectorAll: :not pseudo-class selector, matching nothing: :not(*|*) 
+PASS Document.querySelector: :not pseudo-class selector, matching nothing: :not(*|*) 
+PASS Document.querySelectorAll: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line 
+PASS Document.querySelector: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line 
+PASS Document.querySelectorAll: ::first-line pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-line 
+PASS Document.querySelector: ::first-line pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-line 
+PASS Document.querySelectorAll: :first-letter pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-letter 
+PASS Document.querySelector: :first-letter pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-letter 
+PASS Document.querySelectorAll: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter 
+PASS Document.querySelector: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter 
+PASS Document.querySelectorAll: :before pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:before 
+PASS Document.querySelector: :before pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:before 
+PASS Document.querySelectorAll: ::before pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::before 
+PASS Document.querySelector: ::before pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::before 
+PASS Document.querySelectorAll: :after pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:after 
+PASS Document.querySelector: :after pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:after 
+PASS Document.querySelectorAll: ::after pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::after 
+PASS Document.querySelector: ::after pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::after 
+PASS Document.querySelectorAll: Class selector, matching element with specified class: .class-p 
+PASS Document.querySelector: Class selector, matching element with specified class: .class-p 
+PASS Document.querySelectorAll: Class selector, chained, matching only elements with all specified classes: #class .apple.orange.banana 
+PASS Document.querySelector: Class selector, chained, matching only elements with all specified classes: #class .apple.orange.banana 
+PASS Document.querySelectorAll: Class Selector, chained, with type selector: div.apple.banana.orange 
+PASS Document.querySelector: Class Selector, chained, with type selector: div.apple.banana.orange 
+PASS Document.querySelectorAll: Class selector, matching element with class value using non-ASCII characters (1): .台北Táiběi 
+PASS Document.querySelector: Class selector, matching element with class value using non-ASCII characters (1): .台北Táiběi 
+PASS Document.querySelectorAll: Class selector, matching multiple elements with class value using non-ASCII characters: .台北 
+PASS Document.querySelector: Class selector, matching multiple elements with class value using non-ASCII characters: .台北 
+PASS Document.querySelectorAll: Class selector, chained, matching element with multiple class values using non-ASCII characters (1): .台北Táiběi.台北 
+PASS Document.querySelector: Class selector, chained, matching element with multiple class values using non-ASCII characters (1): .台北Táiběi.台北 
+PASS Document.querySelectorAll: Class selector, matching element with class with escaped character: .foo\:bar 
+PASS Document.querySelector: Class selector, matching element with class with escaped character: .foo\:bar 
+PASS Document.querySelectorAll: Class selector, matching element with class with escaped character: .test\.foo\[5\]bar 
+PASS Document.querySelector: Class selector, matching element with class with escaped character: .test\.foo\[5\]bar 
+PASS Document.querySelectorAll: ID selector, matching element with specified id: #id #id-div1 
+PASS Document.querySelector: ID selector, matching element with specified id: #id #id-div1 
+PASS Document.querySelectorAll: ID selector, chained, matching element with specified id: #id-div1, #id-div1 
+PASS Document.querySelector: ID selector, chained, matching element with specified id: #id-div1, #id-div1 
+PASS Document.querySelectorAll: ID selector, chained, matching element with specified id: #id-div1, #id-div2 
+PASS Document.querySelector: ID selector, chained, matching element with specified id: #id-div1, #id-div2 
+PASS Document.querySelectorAll: ID Selector, chained, with type selector: div#id-div1, div#id-div2 
+PASS Document.querySelector: ID Selector, chained, with type selector: div#id-div1, div#id-div2 
+PASS Document.querySelectorAll: ID selector, not matching non-existent descendant: #id #none 
+PASS Document.querySelector: ID selector, not matching non-existent descendant: #id #none 
+PASS Document.querySelectorAll: ID selector, not matching non-existent ancestor: #none #id-div1 
+PASS Document.querySelector: ID selector, not matching non-existent ancestor: #none #id-div1 
+PASS Document.querySelectorAll: ID selector, matching multiple elements with duplicate id: #id-li-duplicate 
+PASS Document.querySelector: ID selector, matching multiple elements with duplicate id: #id-li-duplicate 
+PASS Document.querySelectorAll: ID selector, matching id value using non-ASCII characters (1): #台北Táiběi 
+PASS Document.querySelector: ID selector, matching id value using non-ASCII characters (1): #台北Táiběi 
+PASS Document.querySelectorAll: ID selector, matching id value using non-ASCII characters (2): #台北 
+PASS Document.querySelector: ID selector, matching id value using non-ASCII characters (2): #台北 
+PASS Document.querySelectorAll: ID selector, matching id values using non-ASCII characters (1): #台北Táiběi, #台北 
+PASS Document.querySelector: ID selector, matching id values using non-ASCII characters (1): #台北Táiběi, #台北 
+PASS Document.querySelectorAll: ID selector, matching element with id with escaped character: #\#foo\:bar 
+PASS Document.querySelector: ID selector, matching element with id with escaped character: #\#foo\:bar 
+PASS Document.querySelectorAll: ID selector, matching element with id with escaped character: #test\.foo\[5\]bar 
+PASS Document.querySelector: ID selector, matching element with id with escaped character: #test\.foo\[5\]bar 
+PASS Document.querySelectorAll: Namespace selector, matching element with any namespace: #any-namespace *|div 
+PASS Document.querySelector: Namespace selector, matching element with any namespace: #any-namespace *|div 
+FAIL Document.querySelectorAll: Namespace selector, matching div elements in no namespace only: #no-namespace |div assert_equals: The method should return the expected number of matches. expected 1 but got 4
+FAIL Document.querySelector: Namespace selector, matching div elements in no namespace only: #no-namespace |div assert_equals: The method should return the first match. expected &quot;no-namespace-div3&quot; but got &quot;no-namespace-div1&quot;
+FAIL Document.querySelectorAll: Namespace selector, matching any elements in no namespace only: #no-namespace |* assert_equals: The method should return the expected number of matches. expected 1 but got 4
+FAIL Document.querySelector: Namespace selector, matching any elements in no namespace only: #no-namespace |* assert_equals: The method should return the first match. expected &quot;no-namespace-div3&quot; but got &quot;no-namespace-div1&quot;
+PASS Document.querySelectorAll: Descendant combinator, matching element that is a descendant of an element with id: #descendant div 
+PASS Document.querySelector: Descendant combinator, matching element that is a descendant of an element with id: #descendant div 
+PASS Document.querySelectorAll: Descendant combinator, matching element with id that is a descendant of an element: body #descendant-div1 
+PASS Document.querySelector: Descendant combinator, matching element with id that is a descendant of an element: body #descendant-div1 
+PASS Document.querySelectorAll: Descendant combinator, matching element with id that is a descendant of an element: div #descendant-div1 
+PASS Document.querySelector: Descendant combinator, matching element with id that is a descendant of an element: div #descendant-div1 
+PASS Document.querySelectorAll: Descendant combinator, matching element with id that is a descendant of an element with id: #descendant #descendant-div2 
+PASS Document.querySelector: Descendant combinator, matching element with id that is a descendant of an element with id: #descendant #descendant-div2 
+PASS Document.querySelectorAll: Descendant combinator, matching element with class that is a descendant of an element with id: #descendant .descendant-div2 
+PASS Document.querySelector: Descendant combinator, matching element with class that is a descendant of an element with id: #descendant .descendant-div2 
+PASS Document.querySelectorAll: Descendant combinator, matching element with class that is a descendant of an element with class: .descendant-div1 .descendant-div3 
+PASS Document.querySelector: Descendant combinator, matching element with class that is a descendant of an element with class: .descendant-div1 .descendant-div3 
+PASS Document.querySelectorAll: Descendant combinator, not matching element with id that is not a descendant of an element with id: #descendant-div1 #descendant-div4 
+PASS Document.querySelector: Descendant combinator, not matching element with id that is not a descendant of an element with id: #descendant-div1 #descendant-div4 
+PASS Document.querySelectorAll: Descendant combinator, whitespace characters: #descendant        
+#descendant-div2 
+PASS Document.querySelector: Descendant combinator, whitespace characters: #descendant        
+#descendant-div2 
+PASS Document.querySelectorAll: Child combinator, matching element that is a child of an element with id: #child&gt;div 
+PASS Document.querySelector: Child combinator, matching element that is a child of an element with id: #child&gt;div 
+PASS Document.querySelectorAll: Child combinator, matching element with id that is a child of an element: div&gt;#child-div1 
+PASS Document.querySelector: Child combinator, matching element with id that is a child of an element: div&gt;#child-div1 
+PASS Document.querySelectorAll: Child combinator, matching element with id that is a child of an element with id: #child&gt;#child-div1 
+PASS Document.querySelector: Child combinator, matching element with id that is a child of an element with id: #child&gt;#child-div1 
+PASS Document.querySelectorAll: Child combinator, matching element with id that is a child of an element with class: #child-div1&gt;.child-div2 
+PASS Document.querySelector: Child combinator, matching element with id that is a child of an element with class: #child-div1&gt;.child-div2 
+PASS Document.querySelectorAll: Child combinator, matching element with class that is a child of an element with class: .child-div1&gt;.child-div2 
+PASS Document.querySelector: Child combinator, matching element with class that is a child of an element with class: .child-div1&gt;.child-div2 
+PASS Document.querySelectorAll: Child combinator, not matching element with id that is not a child of an element with id: #child&gt;#child-div3 
+PASS Document.querySelector: Child combinator, not matching element with id that is not a child of an element with id: #child&gt;#child-div3 
+PASS Document.querySelectorAll: Child combinator, not matching element with id that is not a child of an element with class: #child-div1&gt;.child-div3 
+PASS Document.querySelector: Child combinator, not matching element with id that is not a child of an element with class: #child-div1&gt;.child-div3 
+PASS Document.querySelectorAll: Child combinator, not matching element with class that is not a child of an element with class: .child-div1&gt;.child-div3 
+PASS Document.querySelector: Child combinator, not matching element with class that is not a child of an element with class: .child-div1&gt;.child-div3 
+PASS Document.querySelectorAll: Child combinator, surrounded by whitespace: #child-div1        
+&gt;        
+#child-div2 
+PASS Document.querySelector: Child combinator, surrounded by whitespace: #child-div1        
+&gt;        
+#child-div2 
+PASS Document.querySelectorAll: Child combinator, whitespace after: #child-div1&gt;        
+#child-div2 
+PASS Document.querySelector: Child combinator, whitespace after: #child-div1&gt;        
+#child-div2 
+PASS Document.querySelectorAll: Child combinator, whitespace before: #child-div1        
+&gt;#child-div2 
+PASS Document.querySelector: Child combinator, whitespace before: #child-div1        
+&gt;#child-div2 
+PASS Document.querySelectorAll: Child combinator, no whitespace: #child-div1&gt;#child-div2 
+PASS Document.querySelector: Child combinator, no whitespace: #child-div1&gt;#child-div2 
+PASS Document.querySelectorAll: Adjacent sibling combinator, matching element that is an adjacent sibling of an element with id: #adjacent-div2+div 
+PASS Document.querySelector: Adjacent sibling combinator, matching element that is an adjacent sibling of an element with id: #adjacent-div2+div 
+PASS Document.querySelectorAll: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element: div+#adjacent-div4 
+PASS Document.querySelector: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element: div+#adjacent-div4 
+PASS Document.querySelectorAll: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element with id: #adjacent-div2+#adjacent-div4 
+PASS Document.querySelector: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element with id: #adjacent-div2+#adjacent-div4 
+PASS Document.querySelectorAll: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with id: #adjacent-div2+.adjacent-div4 
+PASS Document.querySelector: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with id: #adjacent-div2+.adjacent-div4 
+PASS Document.querySelectorAll: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with class: .adjacent-div2+.adjacent-div4 
+PASS Document.querySelector: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with class: .adjacent-div2+.adjacent-div4 
+PASS Document.querySelectorAll: Adjacent sibling combinator, matching p element that is an adjacent sibling of a div element: #adjacent div+p 
+PASS Document.querySelector: Adjacent sibling combinator, matching p element that is an adjacent sibling of a div element: #adjacent div+p 
+PASS Document.querySelectorAll: Adjacent sibling combinator, not matching element with id that is not an adjacent sibling of an element with id: #adjacent-div2+#adjacent-p2, #adjacent-div2+#adjacent-div1 
+PASS Document.querySelector: Adjacent sibling combinator, not matching element with id that is not an adjacent sibling of an element with id: #adjacent-div2+#adjacent-p2, #adjacent-div2+#adjacent-div1 
+PASS Document.querySelectorAll: Adjacent sibling combinator, surrounded by whitespace: #adjacent-p2        
++        
+#adjacent-p3 
+PASS Document.querySelector: Adjacent sibling combinator, surrounded by whitespace: #adjacent-p2        
++        
+#adjacent-p3 
+PASS Document.querySelectorAll: Adjacent sibling combinator, whitespace after: #adjacent-p2+        
+#adjacent-p3 
+PASS Document.querySelector: Adjacent sibling combinator, whitespace after: #adjacent-p2+        
+#adjacent-p3 
+PASS Document.querySelectorAll: Adjacent sibling combinator, whitespace before: #adjacent-p2        
++#adjacent-p3 
+PASS Document.querySelector: Adjacent sibling combinator, whitespace before: #adjacent-p2        
++#adjacent-p3 
+PASS Document.querySelectorAll: Adjacent sibling combinator, no whitespace: #adjacent-p2+#adjacent-p3 
+PASS Document.querySelector: Adjacent sibling combinator, no whitespace: #adjacent-p2+#adjacent-p3 
+PASS Document.querySelectorAll: General sibling combinator, matching element that is a sibling of an element with id: #sibling-div2~div 
+PASS Document.querySelector: General sibling combinator, matching element that is a sibling of an element with id: #sibling-div2~div 
+PASS Document.querySelectorAll: General sibling combinator, matching element with id that is a sibling of an element: div~#sibling-div4 
+PASS Document.querySelector: General sibling combinator, matching element with id that is a sibling of an element: div~#sibling-div4 
+PASS Document.querySelectorAll: General sibling combinator, matching element with id that is a sibling of an element with id: #sibling-div2~#sibling-div4 
+PASS Document.querySelector: General sibling combinator, matching element with id that is a sibling of an element with id: #sibling-div2~#sibling-div4 
+PASS Document.querySelectorAll: General sibling combinator, matching element with class that is a sibling of an element with id: #sibling-div2~.sibling-div 
+PASS Document.querySelector: General sibling combinator, matching element with class that is a sibling of an element with id: #sibling-div2~.sibling-div 
+PASS Document.querySelectorAll: General sibling combinator, matching p element that is a sibling of a div element: #sibling div~p 
+PASS Document.querySelector: General sibling combinator, matching p element that is a sibling of a div element: #sibling div~p 
+PASS Document.querySelectorAll: General sibling combinator, not matching element with id that is not a sibling after a p element: #sibling&gt;p~div 
+PASS Document.querySelector: General sibling combinator, not matching element with id that is not a sibling after a p element: #sibling&gt;p~div 
+PASS Document.querySelectorAll: General sibling combinator, not matching element with id that is not a sibling after an element with id: #sibling-div2~#sibling-div3, #sibling-div2~#sibling-div1 
+PASS Document.querySelector: General sibling combinator, not matching element with id that is not a sibling after an element with id: #sibling-div2~#sibling-div3, #sibling-div2~#sibling-div1 
+PASS Document.querySelectorAll: General sibling combinator, surrounded by whitespace: #sibling-p2        
+~        
+#sibling-p3 
+PASS Document.querySelector: General sibling combinator, surrounded by whitespace: #sibling-p2        
+~        
+#sibling-p3 
+PASS Document.querySelectorAll: General sibling combinator, whitespace after: #sibling-p2~        
+#sibling-p3 
+PASS Document.querySelector: General sibling combinator, whitespace after: #sibling-p2~        
+#sibling-p3 
+PASS Document.querySelectorAll: General sibling combinator, whitespace before: #sibling-p2        
+~#sibling-p3 
+PASS Document.querySelector: General sibling combinator, whitespace before: #sibling-p2        
+~#sibling-p3 
+PASS Document.querySelectorAll: General sibling combinator, no whitespace: #sibling-p2~#sibling-p3 
+PASS Document.querySelector: General sibling combinator, no whitespace: #sibling-p2~#sibling-p3 
+PASS Document.querySelectorAll: Syntax, group of selectors separator, surrounded by whitespace: #group em        

+,        

+#group strong 
+PASS Document.querySelector: Syntax, group of selectors separator, surrounded by whitespace: #group em        

+,        

+#group strong 
+PASS Document.querySelectorAll: Syntax, group of selectors separator, whitespace after: #group em,        
+#group strong 
+PASS Document.querySelector: Syntax, group of selectors separator, whitespace after: #group em,        
+#group strong 
+PASS Document.querySelectorAll: Syntax, group of selectors separator, whitespace before: #group em        
+,#group strong 
+PASS Document.querySelector: Syntax, group of selectors separator, whitespace before: #group em        
+,#group strong 
+PASS Document.querySelectorAll: Syntax, group of selectors separator, no whitespace: #group em,#group strong 
+PASS Document.querySelector: Syntax, group of selectors separator, no whitespace: #group em,#group strong 
+PASS Detached Element.querySelectorAll: Type selector, matching html element: html 
+PASS Detached Element.querySelector: Type selector, matching html element: html 
+PASS Detached Element.querySelectorAll: Type selector, matching body element: body 
+PASS Detached Element.querySelector: Type selector, matching body element: body 
+PASS Detached Element.querySelectorAll: Universal selector, matching all children of element with specified ID: #universal&gt;* 
+PASS Detached Element.querySelector: Universal selector, matching all children of element with specified ID: #universal&gt;* 
+PASS Detached Element.querySelectorAll: Universal selector, matching all grandchildren of element with specified ID: #universal&gt;*&gt;* 
+PASS Detached Element.querySelector: Universal selector, matching all grandchildren of element with specified ID: #universal&gt;*&gt;* 
+PASS Detached Element.querySelectorAll: Universal selector, matching all children of empty element with specified ID: #empty&gt;* 
+PASS Detached Element.querySelector: Universal selector, matching all children of empty element with specified ID: #empty&gt;* 
+PASS Detached Element.querySelectorAll: Universal selector, matching all descendants of element with specified ID: #universal * 
+PASS Detached Element.querySelector: Universal selector, matching all descendants of element with specified ID: #universal * 
+PASS Detached Element.querySelectorAll: Attribute presence selector, matching align attribute with value: .attr-presence-div1[align] 
+PASS Detached Element.querySelector: Attribute presence selector, matching align attribute with value: .attr-presence-div1[align] 
+PASS Detached Element.querySelectorAll: Attribute presence selector, matching align attribute with empty value: .attr-presence-div2[align] 
+PASS Detached Element.querySelector: Attribute presence selector, matching align attribute with empty value: .attr-presence-div2[align] 
+PASS Detached Element.querySelectorAll: Attribute presence selector, not matching title attribute, case sensitivity: #attr-presence [TiTlE] 
+PASS Detached Element.querySelector: Attribute presence selector, not matching title attribute, case sensitivity: #attr-presence [TiTlE] 
+PASS Detached Element.querySelectorAll: Attribute presence selector, matching custom data-* attribute: [data-attr-presence] 
+PASS Detached Element.querySelector: Attribute presence selector, matching custom data-* attribute: [data-attr-presence] 
+PASS Detached Element.querySelectorAll: Attribute presence selector, not matching attribute with similar name: .attr-presence-div3[align], .attr-presence-div4[align] 
+PASS Detached Element.querySelector: Attribute presence selector, not matching attribute with similar name: .attr-presence-div3[align], .attr-presence-div4[align] 
+PASS Detached Element.querySelectorAll: Attribute presence selector, matching attribute with non-ASCII characters: ul[data-中文] 
+PASS Detached Element.querySelector: Attribute presence selector, matching attribute with non-ASCII characters: ul[data-中文] 
+PASS Detached Element.querySelectorAll: Attribute presence selector, not matching default option without selected attribute: #attr-presence-select1 option[selected] 
+PASS Detached Element.querySelector: Attribute presence selector, not matching default option without selected attribute: #attr-presence-select1 option[selected] 
+PASS Detached Element.querySelectorAll: Attribute presence selector, matching option with selected attribute: #attr-presence-select2 option[selected] 
+PASS Detached Element.querySelector: Attribute presence selector, matching option with selected attribute: #attr-presence-select2 option[selected] 
+PASS Detached Element.querySelectorAll: Attribute presence selector, matching multiple options with selected attributes: #attr-presence-select3 option[selected] 
+PASS Detached Element.querySelector: Attribute presence selector, matching multiple options with selected attributes: #attr-presence-select3 option[selected] 
+PASS Detached Element.querySelectorAll: Attribute value selector, matching align attribute with value: #attr-value [align=&quot;center&quot;] 
+PASS Detached Element.querySelector: Attribute value selector, matching align attribute with value: #attr-value [align=&quot;center&quot;] 
+PASS Detached Element.querySelectorAll: Attribute value selector, matching align attribute with empty value: #attr-value [align=&quot;&quot;] 
+PASS Detached Element.querySelector: Attribute value selector, matching align attribute with empty value: #attr-value [align=&quot;&quot;] 
+PASS Detached Element.querySelectorAll: Attribute value selector, not matching align attribute with partial value: #attr-value [align=&quot;c&quot;] 
+PASS Detached Element.querySelector: Attribute value selector, not matching align attribute with partial value: #attr-value [align=&quot;c&quot;] 
+PASS Detached Element.querySelectorAll: Attribute value selector, not matching align attribute with incorrect value: #attr-value [align=&quot;centera&quot;] 
+PASS Detached Element.querySelector: Attribute value selector, not matching align attribute with incorrect value: #attr-value [align=&quot;centera&quot;] 
+PASS Detached Element.querySelectorAll: Attribute value selector, matching custom data-* attribute with unicode escaped value: [data-attr-value=&quot;\e9&quot;] 
+PASS Detached Element.querySelector: Attribute value selector, matching custom data-* attribute with unicode escaped value: [data-attr-value=&quot;\e9&quot;] 
+PASS Detached Element.querySelectorAll: Attribute value selector, matching custom data-* attribute with escaped character: [data-attr-value_foo=&quot;\e9&quot;] 
+PASS Detached Element.querySelector: Attribute value selector, matching custom data-* attribute with escaped character: [data-attr-value_foo=&quot;\e9&quot;] 
+PASS Detached Element.querySelectorAll: Attribute value selector with single-quoted value, matching multiple inputs with type attributes: #attr-value input[type='hidden'],#attr-value input[type='radio'] 
+PASS Detached Element.querySelector: Attribute value selector with single-quoted value, matching multiple inputs with type attributes: #attr-value input[type='hidden'],#attr-value input[type='radio'] 
+PASS Detached Element.querySelectorAll: Attribute value selector with double-quoted value, matching multiple inputs with type attributes: #attr-value input[type=&quot;hidden&quot;],#attr-value input[type='radio'] 
+PASS Detached Element.querySelector: Attribute value selector with double-quoted value, matching multiple inputs with type attributes: #attr-value input[type=&quot;hidden&quot;],#attr-value input[type='radio'] 
+PASS Detached Element.querySelectorAll: Attribute value selector with unquoted value, matching multiple inputs with type attributes: #attr-value input[type=hidden],#attr-value input[type=radio] 
+PASS Detached Element.querySelector: Attribute value selector with unquoted value, matching multiple inputs with type attributes: #attr-value input[type=hidden],#attr-value input[type=radio] 
+PASS Detached Element.querySelectorAll: Attribute value selector, matching attribute with value using non-ASCII characters: [data-attr-value=中文] 
+PASS Detached Element.querySelector: Attribute value selector, matching attribute with value using non-ASCII characters: [data-attr-value=中文] 
+PASS Detached Element.querySelectorAll: Attribute whitespace-separated list selector, matching class attribute with value: #attr-whitespace [class~=&quot;div1&quot;] 
+PASS Detached Element.querySelector: Attribute whitespace-separated list selector, matching class attribute with value: #attr-whitespace [class~=&quot;div1&quot;] 
+PASS Detached Element.querySelectorAll: Attribute whitespace-separated list selector, not matching class attribute with empty value: #attr-whitespace [class~=&quot;&quot;] 
+PASS Detached Element.querySelector: Attribute whitespace-separated list selector, not matching class attribute with empty value: #attr-whitespace [class~=&quot;&quot;] 
+PASS Detached Element.querySelectorAll: Attribute whitespace-separated list selector, not matching class attribute with partial value: [data-attr-whitespace~=&quot;div&quot;] 
+PASS Detached Element.querySelector: Attribute whitespace-separated list selector, not matching class attribute with partial value: [data-attr-whitespace~=&quot;div&quot;] 
+PASS Detached Element.querySelectorAll: Attribute whitespace-separated list selector, matching custom data-* attribute with unicode escaped value: [data-attr-whitespace~=&quot;\0000e9&quot;] 
+PASS Detached Element.querySelector: Attribute whitespace-separated list selector, matching custom data-* attribute with unicode escaped value: [data-attr-whitespace~=&quot;\0000e9&quot;] 
+PASS Detached Element.querySelectorAll: Attribute whitespace-separated list selector, matching custom data-* attribute with escaped character: [data-attr-whitespace_foo~=&quot;\e9&quot;] 
+PASS Detached Element.querySelector: Attribute whitespace-separated list selector, matching custom data-* attribute with escaped character: [data-attr-whitespace_foo~=&quot;\e9&quot;] 
+PASS Detached Element.querySelectorAll: Attribute whitespace-separated list selector with single-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~='bookmark'],  #attr-whitespace a[rel~='nofollow'] 
+PASS Detached Element.querySelector: Attribute whitespace-separated list selector with single-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~='bookmark'],  #attr-whitespace a[rel~='nofollow'] 
+PASS Detached Element.querySelectorAll: Attribute whitespace-separated list selector with double-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=&quot;bookmark&quot;],#attr-whitespace a[rel~='nofollow'] 
+PASS Detached Element.querySelector: Attribute whitespace-separated list selector with double-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=&quot;bookmark&quot;],#attr-whitespace a[rel~='nofollow'] 
+PASS Detached Element.querySelectorAll: Attribute whitespace-separated list selector with unquoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=bookmark],    #attr-whitespace a[rel~=nofollow] 
+PASS Detached Element.querySelector: Attribute whitespace-separated list selector with unquoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=bookmark],    #attr-whitespace a[rel~=nofollow] 
+PASS Detached Element.querySelectorAll: Attribute whitespace-separated list selector with double-quoted value, not matching value with space: #attr-whitespace a[rel~=&quot;book mark&quot;] 
+PASS Detached Element.querySelector: Attribute whitespace-separated list selector with double-quoted value, not matching value with space: #attr-whitespace a[rel~=&quot;book mark&quot;] 
+PASS Detached Element.querySelectorAll: Attribute whitespace-separated list selector, matching title attribute with value using non-ASCII characters: #attr-whitespace [title~=中文] 
+PASS Detached Element.querySelector: Attribute whitespace-separated list selector, matching title attribute with value using non-ASCII characters: #attr-whitespace [title~=中文] 
+PASS Detached Element.querySelectorAll: Attribute hyphen-separated list selector, not matching unspecified lang attribute: #attr-hyphen-div1[lang|=&quot;en&quot;] 
+PASS Detached Element.querySelector: Attribute hyphen-separated list selector, not matching unspecified lang attribute: #attr-hyphen-div1[lang|=&quot;en&quot;] 
+PASS Detached Element.querySelectorAll: Attribute hyphen-separated list selector, matching lang attribute with exact value: #attr-hyphen-div2[lang|=&quot;fr&quot;] 
+PASS Detached Element.querySelector: Attribute hyphen-separated list selector, matching lang attribute with exact value: #attr-hyphen-div2[lang|=&quot;fr&quot;] 
+PASS Detached Element.querySelectorAll: Attribute hyphen-separated list selector, matching lang attribute with partial value: #attr-hyphen-div3[lang|=&quot;en&quot;] 
+PASS Detached Element.querySelector: Attribute hyphen-separated list selector, matching lang attribute with partial value: #attr-hyphen-div3[lang|=&quot;en&quot;] 
+PASS Detached Element.querySelectorAll: Attribute hyphen-separated list selector, not matching incorrect value: #attr-hyphen-div4[lang|=&quot;es-AR&quot;] 
+PASS Detached Element.querySelector: Attribute hyphen-separated list selector, not matching incorrect value: #attr-hyphen-div4[lang|=&quot;es-AR&quot;] 
+PASS Detached Element.querySelectorAll: Attribute begins with selector, matching href attributes beginning with specified substring: #attr-begins a[href^=&quot;http://www&quot;] 
+PASS Detached Element.querySelector: Attribute begins with selector, matching href attributes beginning with specified substring: #attr-begins a[href^=&quot;http://www&quot;] 
+PASS Detached Element.querySelectorAll: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^=&quot;en-&quot;] 
+PASS Detached Element.querySelector: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^=&quot;en-&quot;] 
+PASS Detached Element.querySelectorAll: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
+PASS Detached Element.querySelector: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
+PASS Detached Element.querySelectorAll: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=' apple'] 
+PASS Detached Element.querySelector: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=' apple'] 
+PASS Detached Element.querySelectorAll: Attribute begins with selector with double-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=&quot; apple&quot;] 
+PASS Detached Element.querySelector: Attribute begins with selector with double-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=&quot; apple&quot;] 
+PASS Detached Element.querySelectorAll: Attribute begins with selector with unquoted value, not matching class attribute not beginning with specified substring: #attr-begins [class^= apple] 
+PASS Detached Element.querySelector: Attribute begins with selector with unquoted value, not matching class attribute not beginning with specified substring: #attr-begins [class^= apple] 
+PASS Detached Element.querySelectorAll: Attribute ends with selector, matching href attributes ending with specified substring: #attr-ends a[href$=&quot;.org&quot;] 
+PASS Detached Element.querySelector: Attribute ends with selector, matching href attributes ending with specified substring: #attr-ends a[href$=&quot;.org&quot;] 
+PASS Detached Element.querySelectorAll: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$=&quot;-CH&quot;] 
+PASS Detached Element.querySelector: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$=&quot;-CH&quot;] 
+PASS Detached Element.querySelectorAll: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
+PASS Detached Element.querySelector: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
+PASS Detached Element.querySelectorAll: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring: #attr-ends [class$='apple '] 
+PASS Detached Element.querySelector: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring: #attr-ends [class$='apple '] 
+PASS Detached Element.querySelectorAll: Attribute ends with selector with double-quoted value, matching class attribute ending with specified substring: #attr-ends [class$=&quot;apple &quot;] 
+PASS Detached Element.querySelector: Attribute ends with selector with double-quoted value, matching class attribute ending with specified substring: #attr-ends [class$=&quot;apple &quot;] 
+PASS Detached Element.querySelectorAll: Attribute ends with selector with unquoted value, not matching class attribute not ending with specified substring: #attr-ends [class$=apple ] 
+PASS Detached Element.querySelector: Attribute ends with selector with unquoted value, not matching class attribute not ending with specified substring: #attr-ends [class$=apple ] 
+PASS Detached Element.querySelectorAll: Attribute contains selector, matching href attributes beginning with specified substring: #attr-contains a[href*=&quot;http://www&quot;] 
+PASS Detached Element.querySelector: Attribute contains selector, matching href attributes beginning with specified substring: #attr-contains a[href*=&quot;http://www&quot;] 
+PASS Detached Element.querySelectorAll: Attribute contains selector, matching href attributes ending with specified substring: #attr-contains a[href*=&quot;.org&quot;] 
+PASS Detached Element.querySelector: Attribute contains selector, matching href attributes ending with specified substring: #attr-contains a[href*=&quot;.org&quot;] 
+PASS Detached Element.querySelectorAll: Attribute contains selector, matching href attributes containing specified substring: #attr-contains a[href*=&quot;.example.&quot;] 
+PASS Detached Element.querySelector: Attribute contains selector, matching href attributes containing specified substring: #attr-contains a[href*=&quot;.example.&quot;] 
+PASS Detached Element.querySelectorAll: Attribute contains selector, matching lang attributes beginning with specified substring, : #attr-contains [lang*=&quot;en-&quot;] 
+PASS Detached Element.querySelector: Attribute contains selector, matching lang attributes beginning with specified substring, : #attr-contains [lang*=&quot;en-&quot;] 
+PASS Detached Element.querySelectorAll: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*=&quot;-CH&quot;] 
+PASS Detached Element.querySelector: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*=&quot;-CH&quot;] 
+PASS Detached Element.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
+PASS Detached Element.querySelector: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
+PASS Detached Element.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring: #attr-contains [class*='orange '] 
+PASS Detached Element.querySelector: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring: #attr-contains [class*='orange '] 
+PASS Detached Element.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute containing specified substring: #attr-contains [class*='ple banana ora'] 
+PASS Detached Element.querySelector: Attribute contains selector with single-quoted value, matching class attribute containing specified substring: #attr-contains [class*='ple banana ora'] 
+PASS Detached Element.querySelectorAll: Attribute contains selector with double-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=&quot; apple&quot;] 
+PASS Detached Element.querySelector: Attribute contains selector with double-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=&quot; apple&quot;] 
+PASS Detached Element.querySelectorAll: Attribute contains selector with double-quoted value, matching class attribute ending with specified substring: #attr-contains [class*=&quot;orange &quot;] 
+PASS Detached Element.querySelector: Attribute contains selector with double-quoted value, matching class attribute ending with specified substring: #attr-contains [class*=&quot;orange &quot;] 
+PASS Detached Element.querySelectorAll: Attribute contains selector with double-quoted value, matching class attribute containing specified substring: #attr-contains [class*=&quot;ple banana ora&quot;] 
+PASS Detached Element.querySelector: Attribute contains selector with double-quoted value, matching class attribute containing specified substring: #attr-contains [class*=&quot;ple banana ora&quot;] 
+PASS Detached Element.querySelectorAll: Attribute contains selector with unquoted value, matching class attribute beginning with specified substring: #attr-contains [class*= apple] 
+PASS Detached Element.querySelector: Attribute contains selector with unquoted value, matching class attribute beginning with specified substring: #attr-contains [class*= apple] 
+PASS Detached Element.querySelectorAll: Attribute contains selector with unquoted value, matching class attribute ending with specified substring: #attr-contains [class*=orange ] 
+PASS Detached Element.querySelector: Attribute contains selector with unquoted value, matching class attribute ending with specified substring: #attr-contains [class*=orange ] 
+PASS Detached Element.querySelectorAll: Attribute contains selector with unquoted value, matching class attribute containing specified substring: #attr-contains [class*= banana ] 
+PASS Detached Element.querySelector: Attribute contains selector with unquoted value, matching class attribute containing specified substring: #attr-contains [class*= banana ] 
+PASS Detached Element.querySelectorAll: :root pseudo-class selector, not matching document root element: :root 
+PASS Detached Element.querySelector: :root pseudo-class selector, not matching document root element: :root 
+PASS Detached Element.querySelectorAll: :nth-child selector, matching the third child element: #pseudo-nth-table1 :nth-child(3) 
+PASS Detached Element.querySelector: :nth-child selector, matching the third child element: #pseudo-nth-table1 :nth-child(3) 
+PASS Detached Element.querySelectorAll: :nth-child selector, matching every third child element: #pseudo-nth li:nth-child(3n) 
+PASS Detached Element.querySelector: :nth-child selector, matching every third child element: #pseudo-nth li:nth-child(3n) 
+PASS Detached Element.querySelectorAll: :nth-child selector, matching every second child element, starting from the fourth: #pseudo-nth li:nth-child(2n+4) 
+PASS Detached Element.querySelector: :nth-child selector, matching every second child element, starting from the fourth: #pseudo-nth li:nth-child(2n+4) 
+PASS Detached Element.querySelectorAll: :nth-child selector, matching every fourth child element, starting from the third: #pseudo-nth-p1 :nth-child(4n-1) 
+PASS Detached Element.querySelector: :nth-child selector, matching every fourth child element, starting from the third: #pseudo-nth-p1 :nth-child(4n-1) 
+PASS Detached Element.querySelectorAll: :nth-last-child selector, matching the third last child element: #pseudo-nth-table1 :nth-last-child(3) 
+PASS Detached Element.querySelector: :nth-last-child selector, matching the third last child element: #pseudo-nth-table1 :nth-last-child(3) 
+PASS Detached Element.querySelectorAll: :nth-last-child selector, matching every third child element from the end: #pseudo-nth li:nth-last-child(3n) 
+PASS Detached Element.querySelector: :nth-last-child selector, matching every third child element from the end: #pseudo-nth li:nth-last-child(3n) 
+PASS Detached Element.querySelectorAll: :nth-last-child selector, matching every second child element from the end, starting from the fourth last: #pseudo-nth li:nth-last-child(2n+4) 
+PASS Detached Element.querySelector: :nth-last-child selector, matching every second child element from the end, starting from the fourth last: #pseudo-nth li:nth-last-child(2n+4) 
+PASS Detached Element.querySelectorAll: :nth-last-child selector, matching every fourth element from the end, starting from the third last: #pseudo-nth-p1 :nth-last-child(4n-1) 
+PASS Detached Element.querySelector: :nth-last-child selector, matching every fourth element from the end, starting from the third last: #pseudo-nth-p1 :nth-last-child(4n-1) 
+PASS Detached Element.querySelectorAll: :nth-of-type selector, matching the third em element: #pseudo-nth-p1 em:nth-of-type(3) 
+PASS Detached Element.querySelector: :nth-of-type selector, matching the third em element: #pseudo-nth-p1 em:nth-of-type(3) 
+PASS Detached Element.querySelectorAll: :nth-of-type selector, matching every second element of their type: #pseudo-nth-p1 :nth-of-type(2n) 
+PASS Detached Element.querySelector: :nth-of-type selector, matching every second element of their type: #pseudo-nth-p1 :nth-of-type(2n) 
+PASS Detached Element.querySelectorAll: :nth-of-type selector, matching every second elemetn of their type, starting from the first: #pseudo-nth-p1 span:nth-of-type(2n-1) 
+PASS Detached Element.querySelector: :nth-of-type selector, matching every second elemetn of their type, starting from the first: #pseudo-nth-p1 span:nth-of-type(2n-1) 
+PASS Detached Element.querySelectorAll: :nth-last-of-type selector, matching the thrid last em element: #pseudo-nth-p1 em:nth-last-of-type(3) 
+PASS Detached Element.querySelector: :nth-last-of-type selector, matching the thrid last em element: #pseudo-nth-p1 em:nth-last-of-type(3) 
+PASS Detached Element.querySelectorAll: :nth-last-of-type selector, matching every second last element of their type: #pseudo-nth-p1 :nth-last-of-type(2n) 
+PASS Detached Element.querySelector: :nth-last-of-type selector, matching every second last element of their type: #pseudo-nth-p1 :nth-last-of-type(2n) 
+PASS Detached Element.querySelectorAll: :nth-last-of-type selector, matching every second last element of their type, starting from the last: #pseudo-nth-p1 span:nth-last-of-type(2n-1) 
+PASS Detached Element.querySelector: :nth-last-of-type selector, matching every second last element of their type, starting from the last: #pseudo-nth-p1 span:nth-last-of-type(2n-1) 
+PASS Detached Element.querySelectorAll: :first-of-type selector, matching the first em element: #pseudo-nth-p1 em:first-of-type 
+PASS Detached Element.querySelector: :first-of-type selector, matching the first em element: #pseudo-nth-p1 em:first-of-type 
+PASS Detached Element.querySelectorAll: :first-of-type selector, matching the first of every type of element: #pseudo-nth-p1 :first-of-type 
+PASS Detached Element.querySelector: :first-of-type selector, matching the first of every type of element: #pseudo-nth-p1 :first-of-type 
+PASS Detached Element.querySelectorAll: :first-of-type selector, matching the first td element in each table row: #pseudo-nth-table1 tr :first-of-type 
+PASS Detached Element.querySelector: :first-of-type selector, matching the first td element in each table row: #pseudo-nth-table1 tr :first-of-type 
+PASS Detached Element.querySelectorAll: :last-of-type selector, matching the last em elemnet: #pseudo-nth-p1 em:last-of-type 
+PASS Detached Element.querySelector: :last-of-type selector, matching the last em elemnet: #pseudo-nth-p1 em:last-of-type 
+PASS Detached Element.querySelectorAll: :last-of-type selector, matching the last of every type of element: #pseudo-nth-p1 :last-of-type 
+PASS Detached Element.querySelector: :last-of-type selector, matching the last of every type of element: #pseudo-nth-p1 :last-of-type 
+PASS Detached Element.querySelectorAll: :last-of-type selector, matching the last td element in each table row: #pseudo-nth-table1 tr :last-of-type 
+PASS Detached Element.querySelector: :last-of-type selector, matching the last td element in each table row: #pseudo-nth-table1 tr :last-of-type 
+PASS Detached Element.querySelectorAll: :first-child pseudo-class selector, matching first child div element: #pseudo-first-child div:first-child 
+PASS Detached Element.querySelector: :first-child pseudo-class selector, matching first child div element: #pseudo-first-child div:first-child 
+PASS Detached Element.querySelectorAll: :first-child pseudo-class selector, doesn't match non-first-child elements: .pseudo-first-child-div2:first-child, .pseudo-first-child-div3:first-child 
+PASS Detached Element.querySelector: :first-child pseudo-class selector, doesn't match non-first-child elements: .pseudo-first-child-div2:first-child, .pseudo-first-child-div3:first-child 
+PASS Detached Element.querySelectorAll: :first-child pseudo-class selector, matching first-child of multiple elements: #pseudo-first-child span:first-child 
+PASS Detached Element.querySelector: :first-child pseudo-class selector, matching first-child of multiple elements: #pseudo-first-child span:first-child 
+PASS Detached Element.querySelectorAll: :last-child pseudo-class selector, matching last child div element: #pseudo-last-child div:last-child 
+PASS Detached Element.querySelector: :last-child pseudo-class selector, matching last child div element: #pseudo-last-child div:last-child 
+PASS Detached Element.querySelectorAll: :last-child pseudo-class selector, doesn't match non-last-child elements: .pseudo-last-child-div1:last-child, .pseudo-last-child-div2:first-child 
+PASS Detached Element.querySelector: :last-child pseudo-class selector, doesn't match non-last-child elements: .pseudo-last-child-div1:last-child, .pseudo-last-child-div2:first-child 
+PASS Detached Element.querySelectorAll: :last-child pseudo-class selector, matching first-child of multiple elements: #pseudo-last-child span:last-child 
+PASS Detached Element.querySelector: :last-child pseudo-class selector, matching first-child of multiple elements: #pseudo-last-child span:last-child 
+PASS Detached Element.querySelectorAll: :pseudo-only-child pseudo-class selector, matching all only-child elements: #pseudo-only :only-child 
+PASS Detached Element.querySelector: :pseudo-only-child pseudo-class selector, matching all only-child elements: #pseudo-only :only-child 
+PASS Detached Element.querySelectorAll: :pseudo-only-child pseudo-class selector, matching only-child em elements: #pseudo-only em:only-child 
+PASS Detached Element.querySelector: :pseudo-only-child pseudo-class selector, matching only-child em elements: #pseudo-only em:only-child 
+PASS Detached Element.querySelectorAll: :pseudo-only-of-type pseudo-class selector, matching all elements with no siblings of the same type: #pseudo-only :only-of-type 
+PASS Detached Element.querySelector: :pseudo-only-of-type pseudo-class selector, matching all elements with no siblings of the same type: #pseudo-only :only-of-type 
+PASS Detached Element.querySelectorAll: :pseudo-only-of-type pseudo-class selector, matching em elements with no siblings of the same type: #pseudo-only em:only-of-type 
+PASS Detached Element.querySelector: :pseudo-only-of-type pseudo-class selector, matching em elements with no siblings of the same type: #pseudo-only em:only-of-type 
+PASS Detached Element.querySelectorAll: :empty pseudo-class selector, matching empty p elements: #pseudo-empty p:empty 
+PASS Detached Element.querySelector: :empty pseudo-class selector, matching empty p elements: #pseudo-empty p:empty 
+PASS Detached Element.querySelectorAll: :empty pseudo-class selector, matching all empty elements: #pseudo-empty :empty 
+PASS Detached Element.querySelector: :empty pseudo-class selector, matching all empty elements: #pseudo-empty :empty 
+PASS Detached Element.querySelectorAll: :link and :visited pseudo-class selectors, matching a and area elements with href attributes: #pseudo-link :link, #pseudo-link :visited 
+PASS Detached Element.querySelector: :link and :visited pseudo-class selectors, matching a and area elements with href attributes: #pseudo-link :link, #pseudo-link :visited 
+PASS Detached Element.querySelectorAll: :link and :visited pseudo-class selectors, not matching link elements with href attributes: #head :link, #head :visited 
+PASS Detached Element.querySelector: :link and :visited pseudo-class selectors, not matching link elements with href attributes: #head :link, #head :visited 
+PASS Detached Element.querySelectorAll: :link and :visited pseudo-class selectors, chained, mutually exclusive pseudo-classes match nothing: :link:visited 
+PASS Detached Element.querySelector: :link and :visited pseudo-class selectors, chained, mutually exclusive pseudo-classes match nothing: :link:visited 
+PASS Detached Element.querySelectorAll: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target 
+PASS Detached Element.querySelector: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target 
+PASS Detached Element.querySelectorAll: :lang pseudo-class selector, not matching element with no inherited language: #pseudo-lang-div1:lang(en) 
+PASS Detached Element.querySelector: :lang pseudo-class selector, not matching element with no inherited language: #pseudo-lang-div1:lang(en) 
+PASS Detached Element.querySelectorAll: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr) 
+PASS Detached Element.querySelector: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr) 
+PASS Detached Element.querySelectorAll: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en) 
+PASS Detached Element.querySelector: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en) 
+PASS Detached Element.querySelectorAll: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR) 
+PASS Detached Element.querySelector: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR) 
+PASS Detached Element.querySelectorAll: :enabled pseudo-class selector, matching all enabled form controls: #pseudo-ui :enabled 
+PASS Detached Element.querySelector: :enabled pseudo-class selector, matching all enabled form controls: #pseudo-ui :enabled 
+PASS Detached Element.querySelectorAll: :enabled pseudo-class selector, matching all disabled form controls: #pseudo-ui :disabled 
+PASS Detached Element.querySelector: :enabled pseudo-class selector, matching all disabled form controls: #pseudo-ui :disabled 
+PASS Detached Element.querySelectorAll: :checked pseudo-class selector, matching checked radio buttons and checkboxes: #pseudo-ui :checked 
+PASS Detached Element.querySelector: :checked pseudo-class selector, matching checked radio buttons and checkboxes: #pseudo-ui :checked 
+PASS Detached Element.querySelectorAll: :not pseudo-class selector, matching : #not&gt;:not(div) 
+PASS Detached Element.querySelector: :not pseudo-class selector, matching : #not&gt;:not(div) 
+PASS Detached Element.querySelectorAll: :not pseudo-class selector, matching : #not * :not(:first-child) 
+PASS Detached Element.querySelector: :not pseudo-class selector, matching : #not * :not(:first-child) 
+PASS Detached Element.querySelectorAll: :not pseudo-class selector, matching nothing: :not(*) 
+PASS Detached Element.querySelector: :not pseudo-class selector, matching nothing: :not(*) 
+PASS Detached Element.querySelectorAll: :not pseudo-class selector, matching nothing: :not(*|*) 
+PASS Detached Element.querySelector: :not pseudo-class selector, matching nothing: :not(*|*) 
+PASS Detached Element.querySelectorAll: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line 
+PASS Detached Element.querySelector: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line 
+PASS Detached Element.querySelectorAll: ::first-line pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-line 
+PASS Detached Element.querySelector: ::first-line pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-line 
+PASS Detached Element.querySelectorAll: :first-letter pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-letter 
+PASS Detached Element.querySelector: :first-letter pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-letter 
+PASS Detached Element.querySelectorAll: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter 
+PASS Detached Element.querySelector: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter 
+PASS Detached Element.querySelectorAll: :before pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:before 
+PASS Detached Element.querySelector: :before pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:before 
+PASS Detached Element.querySelectorAll: ::before pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::before 
+PASS Detached Element.querySelector: ::before pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::before 
+PASS Detached Element.querySelectorAll: :after pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:after 
+PASS Detached Element.querySelector: :after pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:after 
+PASS Detached Element.querySelectorAll: ::after pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::after 
+PASS Detached Element.querySelector: ::after pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::after 
+PASS Detached Element.querySelectorAll: Class selector, matching element with specified class: .class-p 
+PASS Detached Element.querySelector: Class selector, matching element with specified class: .class-p 
+PASS Detached Element.querySelectorAll: Class selector, chained, matching only elements with all specified classes: #class .apple.orange.banana 
+PASS Detached Element.querySelector: Class selector, chained, matching only elements with all specified classes: #class .apple.orange.banana 
+PASS Detached Element.querySelectorAll: Class Selector, chained, with type selector: div.apple.banana.orange 
+PASS Detached Element.querySelector: Class Selector, chained, with type selector: div.apple.banana.orange 
+PASS Detached Element.querySelectorAll: Class selector, matching element with class value using non-ASCII characters (1): .台北Táiběi 
+PASS Detached Element.querySelector: Class selector, matching element with class value using non-ASCII characters (1): .台北Táiběi 
+PASS Detached Element.querySelectorAll: Class selector, matching multiple elements with class value using non-ASCII characters: .台北 
+PASS Detached Element.querySelector: Class selector, matching multiple elements with class value using non-ASCII characters: .台北 
+PASS Detached Element.querySelectorAll: Class selector, chained, matching element with multiple class values using non-ASCII characters (1): .台北Táiběi.台北 
+PASS Detached Element.querySelector: Class selector, chained, matching element with multiple class values using non-ASCII characters (1): .台北Táiběi.台北 
+PASS Detached Element.querySelectorAll: Class selector, matching element with class with escaped character: .foo\:bar 
+PASS Detached Element.querySelector: Class selector, matching element with class with escaped character: .foo\:bar 
+PASS Detached Element.querySelectorAll: Class selector, matching element with class with escaped character: .test\.foo\[5\]bar 
+PASS Detached Element.querySelector: Class selector, matching element with class with escaped character: .test\.foo\[5\]bar 
+PASS Detached Element.querySelectorAll: ID selector, matching element with specified id: #id #id-div1 
+PASS Detached Element.querySelector: ID selector, matching element with specified id: #id #id-div1 
+PASS Detached Element.querySelectorAll: ID selector, chained, matching element with specified id: #id-div1, #id-div1 
+PASS Detached Element.querySelector: ID selector, chained, matching element with specified id: #id-div1, #id-div1 
+PASS Detached Element.querySelectorAll: ID selector, chained, matching element with specified id: #id-div1, #id-div2 
+PASS Detached Element.querySelector: ID selector, chained, matching element with specified id: #id-div1, #id-div2 
+PASS Detached Element.querySelectorAll: ID Selector, chained, with type selector: div#id-div1, div#id-div2 
+PASS Detached Element.querySelector: ID Selector, chained, with type selector: div#id-div1, div#id-div2 
+PASS Detached Element.querySelectorAll: ID selector, not matching non-existent descendant: #id #none 
+PASS Detached Element.querySelector: ID selector, not matching non-existent descendant: #id #none 
+PASS Detached Element.querySelectorAll: ID selector, not matching non-existent ancestor: #none #id-div1 
+PASS Detached Element.querySelector: ID selector, not matching non-existent ancestor: #none #id-div1 
+PASS Detached Element.querySelectorAll: ID selector, matching multiple elements with duplicate id: #id-li-duplicate 
+PASS Detached Element.querySelector: ID selector, matching multiple elements with duplicate id: #id-li-duplicate 
+PASS Detached Element.querySelectorAll: ID selector, matching id value using non-ASCII characters (1): #台北Táiběi 
+PASS Detached Element.querySelector: ID selector, matching id value using non-ASCII characters (1): #台北Táiběi 
+PASS Detached Element.querySelectorAll: ID selector, matching id value using non-ASCII characters (2): #台北 
+PASS Detached Element.querySelector: ID selector, matching id value using non-ASCII characters (2): #台北 
+PASS Detached Element.querySelectorAll: ID selector, matching id values using non-ASCII characters (1): #台北Táiběi, #台北 
+PASS Detached Element.querySelector: ID selector, matching id values using non-ASCII characters (1): #台北Táiběi, #台北 
+PASS Detached Element.querySelectorAll: ID selector, matching element with id with escaped character: #\#foo\:bar 
+PASS Detached Element.querySelector: ID selector, matching element with id with escaped character: #\#foo\:bar 
+PASS Detached Element.querySelectorAll: ID selector, matching element with id with escaped character: #test\.foo\[5\]bar 
+PASS Detached Element.querySelector: ID selector, matching element with id with escaped character: #test\.foo\[5\]bar 
+PASS Detached Element.querySelectorAll: Namespace selector, matching element with any namespace: #any-namespace *|div 
+PASS Detached Element.querySelector: Namespace selector, matching element with any namespace: #any-namespace *|div 
+FAIL Detached Element.querySelectorAll: Namespace selector, matching div elements in no namespace only: #no-namespace |div assert_equals: The method should return the expected number of matches. expected 1 but got 4
+FAIL Detached Element.querySelector: Namespace selector, matching div elements in no namespace only: #no-namespace |div assert_equals: The method should return the first match. expected &quot;no-namespace-div3&quot; but got &quot;no-namespace-div1&quot;
+FAIL Detached Element.querySelectorAll: Namespace selector, matching any elements in no namespace only: #no-namespace |* assert_equals: The method should return the expected number of matches. expected 1 but got 4
+FAIL Detached Element.querySelector: Namespace selector, matching any elements in no namespace only: #no-namespace |* assert_equals: The method should return the first match. expected &quot;no-namespace-div3&quot; but got &quot;no-namespace-div1&quot;
+PASS Detached Element.querySelectorAll: Descendant combinator, matching element that is a descendant of an element with id: #descendant div 
+PASS Detached Element.querySelector: Descendant combinator, matching element that is a descendant of an element with id: #descendant div 
+PASS Detached Element.querySelectorAll: Descendant combinator, matching element with id that is a descendant of an element: div #descendant-div1 
+PASS Detached Element.querySelector: Descendant combinator, matching element with id that is a descendant of an element: div #descendant-div1 
+PASS Detached Element.querySelectorAll: Descendant combinator, matching element with id that is a descendant of an element with id: #descendant #descendant-div2 
+PASS Detached Element.querySelector: Descendant combinator, matching element with id that is a descendant of an element with id: #descendant #descendant-div2 
+PASS Detached Element.querySelectorAll: Descendant combinator, matching element with class that is a descendant of an element with id: #descendant .descendant-div2 
+PASS Detached Element.querySelector: Descendant combinator, matching element with class that is a descendant of an element with id: #descendant .descendant-div2 
+PASS Detached Element.querySelectorAll: Descendant combinator, matching element with class that is a descendant of an element with class: .descendant-div1 .descendant-div3 
+PASS Detached Element.querySelector: Descendant combinator, matching element with class that is a descendant of an element with class: .descendant-div1 .descendant-div3 
+PASS Detached Element.querySelectorAll: Descendant combinator, not matching element with id that is not a descendant of an element with id: #descendant-div1 #descendant-div4 
+PASS Detached Element.querySelector: Descendant combinator, not matching element with id that is not a descendant of an element with id: #descendant-div1 #descendant-div4 
+PASS Detached Element.querySelectorAll: Descendant combinator, whitespace characters: #descendant        
+#descendant-div2 
+PASS Detached Element.querySelector: Descendant combinator, whitespace characters: #descendant        
+#descendant-div2 
+PASS Detached Element.querySelectorAll: Child combinator, matching element that is a child of an element with id: #child&gt;div 
+PASS Detached Element.querySelector: Child combinator, matching element that is a child of an element with id: #child&gt;div 
+PASS Detached Element.querySelectorAll: Child combinator, matching element with id that is a child of an element: div&gt;#child-div1 
+PASS Detached Element.querySelector: Child combinator, matching element with id that is a child of an element: div&gt;#child-div1 
+PASS Detached Element.querySelectorAll: Child combinator, matching element with id that is a child of an element with id: #child&gt;#child-div1 
+PASS Detached Element.querySelector: Child combinator, matching element with id that is a child of an element with id: #child&gt;#child-div1 
+PASS Detached Element.querySelectorAll: Child combinator, matching element with id that is a child of an element with class: #child-div1&gt;.child-div2 
+PASS Detached Element.querySelector: Child combinator, matching element with id that is a child of an element with class: #child-div1&gt;.child-div2 
+PASS Detached Element.querySelectorAll: Child combinator, matching element with class that is a child of an element with class: .child-div1&gt;.child-div2 
+PASS Detached Element.querySelector: Child combinator, matching element with class that is a child of an element with class: .child-div1&gt;.child-div2 
+PASS Detached Element.querySelectorAll: Child combinator, not matching element with id that is not a child of an element with id: #child&gt;#child-div3 
+PASS Detached Element.querySelector: Child combinator, not matching element with id that is not a child of an element with id: #child&gt;#child-div3 
+PASS Detached Element.querySelectorAll: Child combinator, not matching element with id that is not a child of an element with class: #child-div1&gt;.child-div3 
+PASS Detached Element.querySelector: Child combinator, not matching element with id that is not a child of an element with class: #child-div1&gt;.child-div3 
+PASS Detached Element.querySelectorAll: Child combinator, not matching element with class that is not a child of an element with class: .child-div1&gt;.child-div3 
+PASS Detached Element.querySelector: Child combinator, not matching element with class that is not a child of an element with class: .child-div1&gt;.child-div3 
+PASS Detached Element.querySelectorAll: Child combinator, surrounded by whitespace: #child-div1        
+&gt;        
+#child-div2 
+PASS Detached Element.querySelector: Child combinator, surrounded by whitespace: #child-div1        
+&gt;        
+#child-div2 
+PASS Detached Element.querySelectorAll: Child combinator, whitespace after: #child-div1&gt;        
+#child-div2 
+PASS Detached Element.querySelector: Child combinator, whitespace after: #child-div1&gt;        
+#child-div2 
+PASS Detached Element.querySelectorAll: Child combinator, whitespace before: #child-div1        
+&gt;#child-div2 
+PASS Detached Element.querySelector: Child combinator, whitespace before: #child-div1        
+&gt;#child-div2 
+PASS Detached Element.querySelectorAll: Child combinator, no whitespace: #child-div1&gt;#child-div2 
+PASS Detached Element.querySelector: Child combinator, no whitespace: #child-div1&gt;#child-div2 
+PASS Detached Element.querySelectorAll: Adjacent sibling combinator, matching element that is an adjacent sibling of an element with id: #adjacent-div2+div 
+PASS Detached Element.querySelector: Adjacent sibling combinator, matching element that is an adjacent sibling of an element with id: #adjacent-div2+div 
+PASS Detached Element.querySelectorAll: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element: div+#adjacent-div4 
+PASS Detached Element.querySelector: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element: div+#adjacent-div4 
+PASS Detached Element.querySelectorAll: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element with id: #adjacent-div2+#adjacent-div4 
+PASS Detached Element.querySelector: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element with id: #adjacent-div2+#adjacent-div4 
+PASS Detached Element.querySelectorAll: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with id: #adjacent-div2+.adjacent-div4 
+PASS Detached Element.querySelector: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with id: #adjacent-div2+.adjacent-div4 
+PASS Detached Element.querySelectorAll: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with class: .adjacent-div2+.adjacent-div4 
+PASS Detached Element.querySelector: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with class: .adjacent-div2+.adjacent-div4 
+PASS Detached Element.querySelectorAll: Adjacent sibling combinator, matching p element that is an adjacent sibling of a div element: #adjacent div+p 
+PASS Detached Element.querySelector: Adjacent sibling combinator, matching p element that is an adjacent sibling of a div element: #adjacent div+p 
+PASS Detached Element.querySelectorAll: Adjacent sibling combinator, not matching element with id that is not an adjacent sibling of an element with id: #adjacent-div2+#adjacent-p2, #adjacent-div2+#adjacent-div1 
+PASS Detached Element.querySelector: Adjacent sibling combinator, not matching element with id that is not an adjacent sibling of an element with id: #adjacent-div2+#adjacent-p2, #adjacent-div2+#adjacent-div1 
+PASS Detached Element.querySelectorAll: Adjacent sibling combinator, surrounded by whitespace: #adjacent-p2        
++        
+#adjacent-p3 
+PASS Detached Element.querySelector: Adjacent sibling combinator, surrounded by whitespace: #adjacent-p2        
++        
+#adjacent-p3 
+PASS Detached Element.querySelectorAll: Adjacent sibling combinator, whitespace after: #adjacent-p2+        
+#adjacent-p3 
+PASS Detached Element.querySelector: Adjacent sibling combinator, whitespace after: #adjacent-p2+        
+#adjacent-p3 
+PASS Detached Element.querySelectorAll: Adjacent sibling combinator, whitespace before: #adjacent-p2        
++#adjacent-p3 
+PASS Detached Element.querySelector: Adjacent sibling combinator, whitespace before: #adjacent-p2        
++#adjacent-p3 
+PASS Detached Element.querySelectorAll: Adjacent sibling combinator, no whitespace: #adjacent-p2+#adjacent-p3 
+PASS Detached Element.querySelector: Adjacent sibling combinator, no whitespace: #adjacent-p2+#adjacent-p3 
+PASS Detached Element.querySelectorAll: General sibling combinator, matching element that is a sibling of an element with id: #sibling-div2~div 
+PASS Detached Element.querySelector: General sibling combinator, matching element that is a sibling of an element with id: #sibling-div2~div 
+PASS Detached Element.querySelectorAll: General sibling combinator, matching element with id that is a sibling of an element: div~#sibling-div4 
+PASS Detached Element.querySelector: General sibling combinator, matching element with id that is a sibling of an element: div~#sibling-div4 
+PASS Detached Element.querySelectorAll: General sibling combinator, matching element with id that is a sibling of an element with id: #sibling-div2~#sibling-div4 
+PASS Detached Element.querySelector: General sibling combinator, matching element with id that is a sibling of an element with id: #sibling-div2~#sibling-div4 
+PASS Detached Element.querySelectorAll: General sibling combinator, matching element with class that is a sibling of an element with id: #sibling-div2~.sibling-div 
+PASS Detached Element.querySelector: General sibling combinator, matching element with class that is a sibling of an element with id: #sibling-div2~.sibling-div 
+PASS Detached Element.querySelectorAll: General sibling combinator, matching p element that is a sibling of a div element: #sibling div~p 
+PASS Detached Element.querySelector: General sibling combinator, matching p element that is a sibling of a div element: #sibling div~p 
+PASS Detached Element.querySelectorAll: General sibling combinator, not matching element with id that is not a sibling after a p element: #sibling&gt;p~div 
+PASS Detached Element.querySelector: General sibling combinator, not matching element with id that is not a sibling after a p element: #sibling&gt;p~div 
+PASS Detached Element.querySelectorAll: General sibling combinator, not matching element with id that is not a sibling after an element with id: #sibling-div2~#sibling-div3, #sibling-div2~#sibling-div1 
+PASS Detached Element.querySelector: General sibling combinator, not matching element with id that is not a sibling after an element with id: #sibling-div2~#sibling-div3, #sibling-div2~#sibling-div1 
+PASS Detached Element.querySelectorAll: General sibling combinator, surrounded by whitespace: #sibling-p2        
+~        
+#sibling-p3 
+PASS Detached Element.querySelector: General sibling combinator, surrounded by whitespace: #sibling-p2        
+~        
+#sibling-p3 
+PASS Detached Element.querySelectorAll: General sibling combinator, whitespace after: #sibling-p2~        
+#sibling-p3 
+PASS Detached Element.querySelector: General sibling combinator, whitespace after: #sibling-p2~        
+#sibling-p3 
+PASS Detached Element.querySelectorAll: General sibling combinator, whitespace before: #sibling-p2        
+~#sibling-p3 
+PASS Detached Element.querySelector: General sibling combinator, whitespace before: #sibling-p2        
+~#sibling-p3 
+PASS Detached Element.querySelectorAll: General sibling combinator, no whitespace: #sibling-p2~#sibling-p3 
+PASS Detached Element.querySelector: General sibling combinator, no whitespace: #sibling-p2~#sibling-p3 
+PASS Detached Element.querySelectorAll: Syntax, group of selectors separator, surrounded by whitespace: #group em        

+,        

+#group strong 
+PASS Detached Element.querySelector: Syntax, group of selectors separator, surrounded by whitespace: #group em        

+,        

+#group strong 
+PASS Detached Element.querySelectorAll: Syntax, group of selectors separator, whitespace after: #group em,        
+#group strong 
+PASS Detached Element.querySelector: Syntax, group of selectors separator, whitespace after: #group em,        
+#group strong 
+PASS Detached Element.querySelectorAll: Syntax, group of selectors separator, whitespace before: #group em        
+,#group strong 
+PASS Detached Element.querySelector: Syntax, group of selectors separator, whitespace before: #group em        
+,#group strong 
+PASS Detached Element.querySelectorAll: Syntax, group of selectors separator, no whitespace: #group em,#group strong 
+PASS Detached Element.querySelector: Syntax, group of selectors separator, no whitespace: #group em,#group strong 
+PASS Fragment.querySelectorAll: Type selector, matching html element: html 
+PASS Fragment.querySelector: Type selector, matching html element: html 
+PASS Fragment.querySelectorAll: Type selector, matching body element: body 
+PASS Fragment.querySelector: Type selector, matching body element: body 
+PASS Fragment.querySelectorAll: Universal selector, matching all children of element with specified ID: #universal&gt;* 
+PASS Fragment.querySelector: Universal selector, matching all children of element with specified ID: #universal&gt;* 
+PASS Fragment.querySelectorAll: Universal selector, matching all grandchildren of element with specified ID: #universal&gt;*&gt;* 
+PASS Fragment.querySelector: Universal selector, matching all grandchildren of element with specified ID: #universal&gt;*&gt;* 
+PASS Fragment.querySelectorAll: Universal selector, matching all children of empty element with specified ID: #empty&gt;* 
+PASS Fragment.querySelector: Universal selector, matching all children of empty element with specified ID: #empty&gt;* 
+PASS Fragment.querySelectorAll: Universal selector, matching all descendants of element with specified ID: #universal * 
+PASS Fragment.querySelector: Universal selector, matching all descendants of element with specified ID: #universal * 
+PASS Fragment.querySelectorAll: Attribute presence selector, matching align attribute with value: .attr-presence-div1[align] 
+PASS Fragment.querySelector: Attribute presence selector, matching align attribute with value: .attr-presence-div1[align] 
+PASS Fragment.querySelectorAll: Attribute presence selector, matching align attribute with empty value: .attr-presence-div2[align] 
+PASS Fragment.querySelector: Attribute presence selector, matching align attribute with empty value: .attr-presence-div2[align] 
+PASS Fragment.querySelectorAll: Attribute presence selector, not matching title attribute, case sensitivity: #attr-presence [TiTlE] 
+PASS Fragment.querySelector: Attribute presence selector, not matching title attribute, case sensitivity: #attr-presence [TiTlE] 
+PASS Fragment.querySelectorAll: Attribute presence selector, matching custom data-* attribute: [data-attr-presence] 
+PASS Fragment.querySelector: Attribute presence selector, matching custom data-* attribute: [data-attr-presence] 
+PASS Fragment.querySelectorAll: Attribute presence selector, not matching attribute with similar name: .attr-presence-div3[align], .attr-presence-div4[align] 
+PASS Fragment.querySelector: Attribute presence selector, not matching attribute with similar name: .attr-presence-div3[align], .attr-presence-div4[align] 
+PASS Fragment.querySelectorAll: Attribute presence selector, matching attribute with non-ASCII characters: ul[data-中文] 
+PASS Fragment.querySelector: Attribute presence selector, matching attribute with non-ASCII characters: ul[data-中文] 
+PASS Fragment.querySelectorAll: Attribute presence selector, not matching default option without selected attribute: #attr-presence-select1 option[selected] 
+PASS Fragment.querySelector: Attribute presence selector, not matching default option without selected attribute: #attr-presence-select1 option[selected] 
+PASS Fragment.querySelectorAll: Attribute presence selector, matching option with selected attribute: #attr-presence-select2 option[selected] 
+PASS Fragment.querySelector: Attribute presence selector, matching option with selected attribute: #attr-presence-select2 option[selected] 
+PASS Fragment.querySelectorAll: Attribute presence selector, matching multiple options with selected attributes: #attr-presence-select3 option[selected] 
+PASS Fragment.querySelector: Attribute presence selector, matching multiple options with selected attributes: #attr-presence-select3 option[selected] 
+PASS Fragment.querySelectorAll: Attribute value selector, matching align attribute with value: #attr-value [align=&quot;center&quot;] 
+PASS Fragment.querySelector: Attribute value selector, matching align attribute with value: #attr-value [align=&quot;center&quot;] 
+PASS Fragment.querySelectorAll: Attribute value selector, matching align attribute with empty value: #attr-value [align=&quot;&quot;] 
+PASS Fragment.querySelector: Attribute value selector, matching align attribute with empty value: #attr-value [align=&quot;&quot;] 
+PASS Fragment.querySelectorAll: Attribute value selector, not matching align attribute with partial value: #attr-value [align=&quot;c&quot;] 
+PASS Fragment.querySelector: Attribute value selector, not matching align attribute with partial value: #attr-value [align=&quot;c&quot;] 
+PASS Fragment.querySelectorAll: Attribute value selector, not matching align attribute with incorrect value: #attr-value [align=&quot;centera&quot;] 
+PASS Fragment.querySelector: Attribute value selector, not matching align attribute with incorrect value: #attr-value [align=&quot;centera&quot;] 
+PASS Fragment.querySelectorAll: Attribute value selector, matching custom data-* attribute with unicode escaped value: [data-attr-value=&quot;\e9&quot;] 
+PASS Fragment.querySelector: Attribute value selector, matching custom data-* attribute with unicode escaped value: [data-attr-value=&quot;\e9&quot;] 
+PASS Fragment.querySelectorAll: Attribute value selector, matching custom data-* attribute with escaped character: [data-attr-value_foo=&quot;\e9&quot;] 
+PASS Fragment.querySelector: Attribute value selector, matching custom data-* attribute with escaped character: [data-attr-value_foo=&quot;\e9&quot;] 
+PASS Fragment.querySelectorAll: Attribute value selector with single-quoted value, matching multiple inputs with type attributes: #attr-value input[type='hidden'],#attr-value input[type='radio'] 
+PASS Fragment.querySelector: Attribute value selector with single-quoted value, matching multiple inputs with type attributes: #attr-value input[type='hidden'],#attr-value input[type='radio'] 
+PASS Fragment.querySelectorAll: Attribute value selector with double-quoted value, matching multiple inputs with type attributes: #attr-value input[type=&quot;hidden&quot;],#attr-value input[type='radio'] 
+PASS Fragment.querySelector: Attribute value selector with double-quoted value, matching multiple inputs with type attributes: #attr-value input[type=&quot;hidden&quot;],#attr-value input[type='radio'] 
+PASS Fragment.querySelectorAll: Attribute value selector with unquoted value, matching multiple inputs with type attributes: #attr-value input[type=hidden],#attr-value input[type=radio] 
+PASS Fragment.querySelector: Attribute value selector with unquoted value, matching multiple inputs with type attributes: #attr-value input[type=hidden],#attr-value input[type=radio] 
+PASS Fragment.querySelectorAll: Attribute value selector, matching attribute with value using non-ASCII characters: [data-attr-value=中文] 
+PASS Fragment.querySelector: Attribute value selector, matching attribute with value using non-ASCII characters: [data-attr-value=中文] 
+PASS Fragment.querySelectorAll: Attribute whitespace-separated list selector, matching class attribute with value: #attr-whitespace [class~=&quot;div1&quot;] 
+PASS Fragment.querySelector: Attribute whitespace-separated list selector, matching class attribute with value: #attr-whitespace [class~=&quot;div1&quot;] 
+PASS Fragment.querySelectorAll: Attribute whitespace-separated list selector, not matching class attribute with empty value: #attr-whitespace [class~=&quot;&quot;] 
+PASS Fragment.querySelector: Attribute whitespace-separated list selector, not matching class attribute with empty value: #attr-whitespace [class~=&quot;&quot;] 
+PASS Fragment.querySelectorAll: Attribute whitespace-separated list selector, not matching class attribute with partial value: [data-attr-whitespace~=&quot;div&quot;] 
+PASS Fragment.querySelector: Attribute whitespace-separated list selector, not matching class attribute with partial value: [data-attr-whitespace~=&quot;div&quot;] 
+PASS Fragment.querySelectorAll: Attribute whitespace-separated list selector, matching custom data-* attribute with unicode escaped value: [data-attr-whitespace~=&quot;\0000e9&quot;] 
+PASS Fragment.querySelector: Attribute whitespace-separated list selector, matching custom data-* attribute with unicode escaped value: [data-attr-whitespace~=&quot;\0000e9&quot;] 
+PASS Fragment.querySelectorAll: Attribute whitespace-separated list selector, matching custom data-* attribute with escaped character: [data-attr-whitespace_foo~=&quot;\e9&quot;] 
+PASS Fragment.querySelector: Attribute whitespace-separated list selector, matching custom data-* attribute with escaped character: [data-attr-whitespace_foo~=&quot;\e9&quot;] 
+PASS Fragment.querySelectorAll: Attribute whitespace-separated list selector with single-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~='bookmark'],  #attr-whitespace a[rel~='nofollow'] 
+PASS Fragment.querySelector: Attribute whitespace-separated list selector with single-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~='bookmark'],  #attr-whitespace a[rel~='nofollow'] 
+PASS Fragment.querySelectorAll: Attribute whitespace-separated list selector with double-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=&quot;bookmark&quot;],#attr-whitespace a[rel~='nofollow'] 
+PASS Fragment.querySelector: Attribute whitespace-separated list selector with double-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=&quot;bookmark&quot;],#attr-whitespace a[rel~='nofollow'] 
+PASS Fragment.querySelectorAll: Attribute whitespace-separated list selector with unquoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=bookmark],    #attr-whitespace a[rel~=nofollow] 
+PASS Fragment.querySelector: Attribute whitespace-separated list selector with unquoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=bookmark],    #attr-whitespace a[rel~=nofollow] 
+PASS Fragment.querySelectorAll: Attribute whitespace-separated list selector with double-quoted value, not matching value with space: #attr-whitespace a[rel~=&quot;book mark&quot;] 
+PASS Fragment.querySelector: Attribute whitespace-separated list selector with double-quoted value, not matching value with space: #attr-whitespace a[rel~=&quot;book mark&quot;] 
+PASS Fragment.querySelectorAll: Attribute whitespace-separated list selector, matching title attribute with value using non-ASCII characters: #attr-whitespace [title~=中文] 
+PASS Fragment.querySelector: Attribute whitespace-separated list selector, matching title attribute with value using non-ASCII characters: #attr-whitespace [title~=中文] 
+PASS Fragment.querySelectorAll: Attribute hyphen-separated list selector, not matching unspecified lang attribute: #attr-hyphen-div1[lang|=&quot;en&quot;] 
+PASS Fragment.querySelector: Attribute hyphen-separated list selector, not matching unspecified lang attribute: #attr-hyphen-div1[lang|=&quot;en&quot;] 
+PASS Fragment.querySelectorAll: Attribute hyphen-separated list selector, matching lang attribute with exact value: #attr-hyphen-div2[lang|=&quot;fr&quot;] 
+PASS Fragment.querySelector: Attribute hyphen-separated list selector, matching lang attribute with exact value: #attr-hyphen-div2[lang|=&quot;fr&quot;] 
+PASS Fragment.querySelectorAll: Attribute hyphen-separated list selector, matching lang attribute with partial value: #attr-hyphen-div3[lang|=&quot;en&quot;] 
+PASS Fragment.querySelector: Attribute hyphen-separated list selector, matching lang attribute with partial value: #attr-hyphen-div3[lang|=&quot;en&quot;] 
+PASS Fragment.querySelectorAll: Attribute hyphen-separated list selector, not matching incorrect value: #attr-hyphen-div4[lang|=&quot;es-AR&quot;] 
+PASS Fragment.querySelector: Attribute hyphen-separated list selector, not matching incorrect value: #attr-hyphen-div4[lang|=&quot;es-AR&quot;] 
+PASS Fragment.querySelectorAll: Attribute begins with selector, matching href attributes beginning with specified substring: #attr-begins a[href^=&quot;http://www&quot;] 
+PASS Fragment.querySelector: Attribute begins with selector, matching href attributes beginning with specified substring: #attr-begins a[href^=&quot;http://www&quot;] 
+PASS Fragment.querySelectorAll: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^=&quot;en-&quot;] 
+PASS Fragment.querySelector: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^=&quot;en-&quot;] 
+PASS Fragment.querySelectorAll: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
+PASS Fragment.querySelector: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
+PASS Fragment.querySelectorAll: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=' apple'] 
+PASS Fragment.querySelector: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=' apple'] 
+PASS Fragment.querySelectorAll: Attribute begins with selector with double-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=&quot; apple&quot;] 
+PASS Fragment.querySelector: Attribute begins with selector with double-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=&quot; apple&quot;] 
+PASS Fragment.querySelectorAll: Attribute begins with selector with unquoted value, not matching class attribute not beginning with specified substring: #attr-begins [class^= apple] 
+PASS Fragment.querySelector: Attribute begins with selector with unquoted value, not matching class attribute not beginning with specified substring: #attr-begins [class^= apple] 
+PASS Fragment.querySelectorAll: Attribute ends with selector, matching href attributes ending with specified substring: #attr-ends a[href$=&quot;.org&quot;] 
+PASS Fragment.querySelector: Attribute ends with selector, matching href attributes ending with specified substring: #attr-ends a[href$=&quot;.org&quot;] 
+PASS Fragment.querySelectorAll: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$=&quot;-CH&quot;] 
+PASS Fragment.querySelector: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$=&quot;-CH&quot;] 
+PASS Fragment.querySelectorAll: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
+PASS Fragment.querySelector: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
+PASS Fragment.querySelectorAll: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring: #attr-ends [class$='apple '] 
+PASS Fragment.querySelector: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring: #attr-ends [class$='apple '] 
+PASS Fragment.querySelectorAll: Attribute ends with selector with double-quoted value, matching class attribute ending with specified substring: #attr-ends [class$=&quot;apple &quot;] 
+PASS Fragment.querySelector: Attribute ends with selector with double-quoted value, matching class attribute ending with specified substring: #attr-ends [class$=&quot;apple &quot;] 
+PASS Fragment.querySelectorAll: Attribute ends with selector with unquoted value, not matching class attribute not ending with specified substring: #attr-ends [class$=apple ] 
+PASS Fragment.querySelector: Attribute ends with selector with unquoted value, not matching class attribute not ending with specified substring: #attr-ends [class$=apple ] 
+PASS Fragment.querySelectorAll: Attribute contains selector, matching href attributes beginning with specified substring: #attr-contains a[href*=&quot;http://www&quot;] 
+PASS Fragment.querySelector: Attribute contains selector, matching href attributes beginning with specified substring: #attr-contains a[href*=&quot;http://www&quot;] 
+PASS Fragment.querySelectorAll: Attribute contains selector, matching href attributes ending with specified substring: #attr-contains a[href*=&quot;.org&quot;] 
+PASS Fragment.querySelector: Attribute contains selector, matching href attributes ending with specified substring: #attr-contains a[href*=&quot;.org&quot;] 
+PASS Fragment.querySelectorAll: Attribute contains selector, matching href attributes containing specified substring: #attr-contains a[href*=&quot;.example.&quot;] 
+PASS Fragment.querySelector: Attribute contains selector, matching href attributes containing specified substring: #attr-contains a[href*=&quot;.example.&quot;] 
+PASS Fragment.querySelectorAll: Attribute contains selector, matching lang attributes beginning with specified substring, : #attr-contains [lang*=&quot;en-&quot;] 
+PASS Fragment.querySelector: Attribute contains selector, matching lang attributes beginning with specified substring, : #attr-contains [lang*=&quot;en-&quot;] 
+PASS Fragment.querySelectorAll: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*=&quot;-CH&quot;] 
+PASS Fragment.querySelector: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*=&quot;-CH&quot;] 
+PASS Fragment.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
+PASS Fragment.querySelector: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
+PASS Fragment.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring: #attr-contains [class*='orange '] 
+PASS Fragment.querySelector: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring: #attr-contains [class*='orange '] 
+PASS Fragment.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute containing specified substring: #attr-contains [class*='ple banana ora'] 
+PASS Fragment.querySelector: Attribute contains selector with single-quoted value, matching class attribute containing specified substring: #attr-contains [class*='ple banana ora'] 
+PASS Fragment.querySelectorAll: Attribute contains selector with double-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=&quot; apple&quot;] 
+PASS Fragment.querySelector: Attribute contains selector with double-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=&quot; apple&quot;] 
+PASS Fragment.querySelectorAll: Attribute contains selector with double-quoted value, matching class attribute ending with specified substring: #attr-contains [class*=&quot;orange &quot;] 
+PASS Fragment.querySelector: Attribute contains selector with double-quoted value, matching class attribute ending with specified substring: #attr-contains [class*=&quot;orange &quot;] 
+PASS Fragment.querySelectorAll: Attribute contains selector with double-quoted value, matching class attribute containing specified substring: #attr-contains [class*=&quot;ple banana ora&quot;] 
+PASS Fragment.querySelector: Attribute contains selector with double-quoted value, matching class attribute containing specified substring: #attr-contains [class*=&quot;ple banana ora&quot;] 
+PASS Fragment.querySelectorAll: Attribute contains selector with unquoted value, matching class attribute beginning with specified substring: #attr-contains [class*= apple] 
+PASS Fragment.querySelector: Attribute contains selector with unquoted value, matching class attribute beginning with specified substring: #attr-contains [class*= apple] 
+PASS Fragment.querySelectorAll: Attribute contains selector with unquoted value, matching class attribute ending with specified substring: #attr-contains [class*=orange ] 
+PASS Fragment.querySelector: Attribute contains selector with unquoted value, matching class attribute ending with specified substring: #attr-contains [class*=orange ] 
+PASS Fragment.querySelectorAll: Attribute contains selector with unquoted value, matching class attribute containing specified substring: #attr-contains [class*= banana ] 
+PASS Fragment.querySelector: Attribute contains selector with unquoted value, matching class attribute containing specified substring: #attr-contains [class*= banana ] 
+PASS Fragment.querySelectorAll: :root pseudo-class selector, not matching document root element: :root 
+PASS Fragment.querySelector: :root pseudo-class selector, not matching document root element: :root 
+PASS Fragment.querySelectorAll: :nth-child selector, matching the third child element: #pseudo-nth-table1 :nth-child(3) 
+PASS Fragment.querySelector: :nth-child selector, matching the third child element: #pseudo-nth-table1 :nth-child(3) 
+PASS Fragment.querySelectorAll: :nth-child selector, matching every third child element: #pseudo-nth li:nth-child(3n) 
+PASS Fragment.querySelector: :nth-child selector, matching every third child element: #pseudo-nth li:nth-child(3n) 
+PASS Fragment.querySelectorAll: :nth-child selector, matching every second child element, starting from the fourth: #pseudo-nth li:nth-child(2n+4) 
+PASS Fragment.querySelector: :nth-child selector, matching every second child element, starting from the fourth: #pseudo-nth li:nth-child(2n+4) 
+PASS Fragment.querySelectorAll: :nth-child selector, matching every fourth child element, starting from the third: #pseudo-nth-p1 :nth-child(4n-1) 
+PASS Fragment.querySelector: :nth-child selector, matching every fourth child element, starting from the third: #pseudo-nth-p1 :nth-child(4n-1) 
+PASS Fragment.querySelectorAll: :nth-last-child selector, matching the third last child element: #pseudo-nth-table1 :nth-last-child(3) 
+PASS Fragment.querySelector: :nth-last-child selector, matching the third last child element: #pseudo-nth-table1 :nth-last-child(3) 
+PASS Fragment.querySelectorAll: :nth-last-child selector, matching every third child element from the end: #pseudo-nth li:nth-last-child(3n) 
+PASS Fragment.querySelector: :nth-last-child selector, matching every third child element from the end: #pseudo-nth li:nth-last-child(3n) 
+PASS Fragment.querySelectorAll: :nth-last-child selector, matching every second child element from the end, starting from the fourth last: #pseudo-nth li:nth-last-child(2n+4) 
+PASS Fragment.querySelector: :nth-last-child selector, matching every second child element from the end, starting from the fourth last: #pseudo-nth li:nth-last-child(2n+4) 
+PASS Fragment.querySelectorAll: :nth-last-child selector, matching every fourth element from the end, starting from the third last: #pseudo-nth-p1 :nth-last-child(4n-1) 
+PASS Fragment.querySelector: :nth-last-child selector, matching every fourth element from the end, starting from the third last: #pseudo-nth-p1 :nth-last-child(4n-1) 
+PASS Fragment.querySelectorAll: :nth-of-type selector, matching the third em element: #pseudo-nth-p1 em:nth-of-type(3) 
+PASS Fragment.querySelector: :nth-of-type selector, matching the third em element: #pseudo-nth-p1 em:nth-of-type(3) 
+PASS Fragment.querySelectorAll: :nth-of-type selector, matching every second element of their type: #pseudo-nth-p1 :nth-of-type(2n) 
+PASS Fragment.querySelector: :nth-of-type selector, matching every second element of their type: #pseudo-nth-p1 :nth-of-type(2n) 
+PASS Fragment.querySelectorAll: :nth-of-type selector, matching every second elemetn of their type, starting from the first: #pseudo-nth-p1 span:nth-of-type(2n-1) 
+PASS Fragment.querySelector: :nth-of-type selector, matching every second elemetn of their type, starting from the first: #pseudo-nth-p1 span:nth-of-type(2n-1) 
+PASS Fragment.querySelectorAll: :nth-last-of-type selector, matching the thrid last em element: #pseudo-nth-p1 em:nth-last-of-type(3) 
+PASS Fragment.querySelector: :nth-last-of-type selector, matching the thrid last em element: #pseudo-nth-p1 em:nth-last-of-type(3) 
+PASS Fragment.querySelectorAll: :nth-last-of-type selector, matching every second last element of their type: #pseudo-nth-p1 :nth-last-of-type(2n) 
+PASS Fragment.querySelector: :nth-last-of-type selector, matching every second last element of their type: #pseudo-nth-p1 :nth-last-of-type(2n) 
+PASS Fragment.querySelectorAll: :nth-last-of-type selector, matching every second last element of their type, starting from the last: #pseudo-nth-p1 span:nth-last-of-type(2n-1) 
+PASS Fragment.querySelector: :nth-last-of-type selector, matching every second last element of their type, starting from the last: #pseudo-nth-p1 span:nth-last-of-type(2n-1) 
+PASS Fragment.querySelectorAll: :first-of-type selector, matching the first em element: #pseudo-nth-p1 em:first-of-type 
+PASS Fragment.querySelector: :first-of-type selector, matching the first em element: #pseudo-nth-p1 em:first-of-type 
+PASS Fragment.querySelectorAll: :first-of-type selector, matching the first of every type of element: #pseudo-nth-p1 :first-of-type 
+PASS Fragment.querySelector: :first-of-type selector, matching the first of every type of element: #pseudo-nth-p1 :first-of-type 
+PASS Fragment.querySelectorAll: :first-of-type selector, matching the first td element in each table row: #pseudo-nth-table1 tr :first-of-type 
+PASS Fragment.querySelector: :first-of-type selector, matching the first td element in each table row: #pseudo-nth-table1 tr :first-of-type 
+PASS Fragment.querySelectorAll: :last-of-type selector, matching the last em elemnet: #pseudo-nth-p1 em:last-of-type 
+PASS Fragment.querySelector: :last-of-type selector, matching the last em elemnet: #pseudo-nth-p1 em:last-of-type 
+PASS Fragment.querySelectorAll: :last-of-type selector, matching the last of every type of element: #pseudo-nth-p1 :last-of-type 
+PASS Fragment.querySelector: :last-of-type selector, matching the last of every type of element: #pseudo-nth-p1 :last-of-type 
+PASS Fragment.querySelectorAll: :last-of-type selector, matching the last td element in each table row: #pseudo-nth-table1 tr :last-of-type 
+PASS Fragment.querySelector: :last-of-type selector, matching the last td element in each table row: #pseudo-nth-table1 tr :last-of-type 
+PASS Fragment.querySelectorAll: :first-child pseudo-class selector, matching first child div element: #pseudo-first-child div:first-child 
+PASS Fragment.querySelector: :first-child pseudo-class selector, matching first child div element: #pseudo-first-child div:first-child 
+PASS Fragment.querySelectorAll: :first-child pseudo-class selector, doesn't match non-first-child elements: .pseudo-first-child-div2:first-child, .pseudo-first-child-div3:first-child 
+PASS Fragment.querySelector: :first-child pseudo-class selector, doesn't match non-first-child elements: .pseudo-first-child-div2:first-child, .pseudo-first-child-div3:first-child 
+PASS Fragment.querySelectorAll: :first-child pseudo-class selector, matching first-child of multiple elements: #pseudo-first-child span:first-child 
+PASS Fragment.querySelector: :first-child pseudo-class selector, matching first-child of multiple elements: #pseudo-first-child span:first-child 
+PASS Fragment.querySelectorAll: :last-child pseudo-class selector, matching last child div element: #pseudo-last-child div:last-child 
+PASS Fragment.querySelector: :last-child pseudo-class selector, matching last child div element: #pseudo-last-child div:last-child 
+PASS Fragment.querySelectorAll: :last-child pseudo-class selector, doesn't match non-last-child elements: .pseudo-last-child-div1:last-child, .pseudo-last-child-div2:first-child 
+PASS Fragment.querySelector: :last-child pseudo-class selector, doesn't match non-last-child elements: .pseudo-last-child-div1:last-child, .pseudo-last-child-div2:first-child 
+PASS Fragment.querySelectorAll: :last-child pseudo-class selector, matching first-child of multiple elements: #pseudo-last-child span:last-child 
+PASS Fragment.querySelector: :last-child pseudo-class selector, matching first-child of multiple elements: #pseudo-last-child span:last-child 
+PASS Fragment.querySelectorAll: :pseudo-only-child pseudo-class selector, matching all only-child elements: #pseudo-only :only-child 
+PASS Fragment.querySelector: :pseudo-only-child pseudo-class selector, matching all only-child elements: #pseudo-only :only-child 
+PASS Fragment.querySelectorAll: :pseudo-only-child pseudo-class selector, matching only-child em elements: #pseudo-only em:only-child 
+PASS Fragment.querySelector: :pseudo-only-child pseudo-class selector, matching only-child em elements: #pseudo-only em:only-child 
+PASS Fragment.querySelectorAll: :pseudo-only-of-type pseudo-class selector, matching all elements with no siblings of the same type: #pseudo-only :only-of-type 
+PASS Fragment.querySelector: :pseudo-only-of-type pseudo-class selector, matching all elements with no siblings of the same type: #pseudo-only :only-of-type 
+PASS Fragment.querySelectorAll: :pseudo-only-of-type pseudo-class selector, matching em elements with no siblings of the same type: #pseudo-only em:only-of-type 
+PASS Fragment.querySelector: :pseudo-only-of-type pseudo-class selector, matching em elements with no siblings of the same type: #pseudo-only em:only-of-type 
+PASS Fragment.querySelectorAll: :empty pseudo-class selector, matching empty p elements: #pseudo-empty p:empty 
+PASS Fragment.querySelector: :empty pseudo-class selector, matching empty p elements: #pseudo-empty p:empty 
+PASS Fragment.querySelectorAll: :empty pseudo-class selector, matching all empty elements: #pseudo-empty :empty 
+PASS Fragment.querySelector: :empty pseudo-class selector, matching all empty elements: #pseudo-empty :empty 
+PASS Fragment.querySelectorAll: :link and :visited pseudo-class selectors, matching a and area elements with href attributes: #pseudo-link :link, #pseudo-link :visited 
+PASS Fragment.querySelector: :link and :visited pseudo-class selectors, matching a and area elements with href attributes: #pseudo-link :link, #pseudo-link :visited 
+PASS Fragment.querySelectorAll: :link and :visited pseudo-class selectors, not matching link elements with href attributes: #head :link, #head :visited 
+PASS Fragment.querySelector: :link and :visited pseudo-class selectors, not matching link elements with href attributes: #head :link, #head :visited 
+PASS Fragment.querySelectorAll: :link and :visited pseudo-class selectors, chained, mutually exclusive pseudo-classes match nothing: :link:visited 
+PASS Fragment.querySelector: :link and :visited pseudo-class selectors, chained, mutually exclusive pseudo-classes match nothing: :link:visited 
+PASS Fragment.querySelectorAll: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target 
+PASS Fragment.querySelector: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target 
+PASS Fragment.querySelectorAll: :lang pseudo-class selector, not matching element with no inherited language: #pseudo-lang-div1:lang(en) 
+PASS Fragment.querySelector: :lang pseudo-class selector, not matching element with no inherited language: #pseudo-lang-div1:lang(en) 
+PASS Fragment.querySelectorAll: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr) 
+PASS Fragment.querySelector: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr) 
+PASS Fragment.querySelectorAll: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en) 
+PASS Fragment.querySelector: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en) 
+PASS Fragment.querySelectorAll: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR) 
+PASS Fragment.querySelector: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR) 
+PASS Fragment.querySelectorAll: :enabled pseudo-class selector, matching all enabled form controls: #pseudo-ui :enabled 
+PASS Fragment.querySelector: :enabled pseudo-class selector, matching all enabled form controls: #pseudo-ui :enabled 
+PASS Fragment.querySelectorAll: :enabled pseudo-class selector, matching all disabled form controls: #pseudo-ui :disabled 
+PASS Fragment.querySelector: :enabled pseudo-class selector, matching all disabled form controls: #pseudo-ui :disabled 
+PASS Fragment.querySelectorAll: :checked pseudo-class selector, matching checked radio buttons and checkboxes: #pseudo-ui :checked 
+PASS Fragment.querySelector: :checked pseudo-class selector, matching checked radio buttons and checkboxes: #pseudo-ui :checked 
+PASS Fragment.querySelectorAll: :not pseudo-class selector, matching : #not&gt;:not(div) 
+PASS Fragment.querySelector: :not pseudo-class selector, matching : #not&gt;:not(div) 
+PASS Fragment.querySelectorAll: :not pseudo-class selector, matching : #not * :not(:first-child) 
+PASS Fragment.querySelector: :not pseudo-class selector, matching : #not * :not(:first-child) 
+PASS Fragment.querySelectorAll: :not pseudo-class selector, matching nothing: :not(*) 
+PASS Fragment.querySelector: :not pseudo-class selector, matching nothing: :not(*) 
+PASS Fragment.querySelectorAll: :not pseudo-class selector, matching nothing: :not(*|*) 
+PASS Fragment.querySelector: :not pseudo-class selector, matching nothing: :not(*|*) 
+PASS Fragment.querySelectorAll: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line 
+PASS Fragment.querySelector: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line 
+PASS Fragment.querySelectorAll: ::first-line pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-line 
+PASS Fragment.querySelector: ::first-line pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-line 
+PASS Fragment.querySelectorAll: :first-letter pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-letter 
+PASS Fragment.querySelector: :first-letter pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-letter 
+PASS Fragment.querySelectorAll: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter 
+PASS Fragment.querySelector: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter 
+PASS Fragment.querySelectorAll: :before pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:before 
+PASS Fragment.querySelector: :before pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:before 
+PASS Fragment.querySelectorAll: ::before pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::before 
+PASS Fragment.querySelector: ::before pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::before 
+PASS Fragment.querySelectorAll: :after pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:after 
+PASS Fragment.querySelector: :after pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:after 
+PASS Fragment.querySelectorAll: ::after pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::after 
+PASS Fragment.querySelector: ::after pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::after 
+PASS Fragment.querySelectorAll: Class selector, matching element with specified class: .class-p 
+PASS Fragment.querySelector: Class selector, matching element with specified class: .class-p 
+PASS Fragment.querySelectorAll: Class selector, chained, matching only elements with all specified classes: #class .apple.orange.banana 
+PASS Fragment.querySelector: Class selector, chained, matching only elements with all specified classes: #class .apple.orange.banana 
+PASS Fragment.querySelectorAll: Class Selector, chained, with type selector: div.apple.banana.orange 
+PASS Fragment.querySelector: Class Selector, chained, with type selector: div.apple.banana.orange 
+PASS Fragment.querySelectorAll: Class selector, matching element with class value using non-ASCII characters (1): .台北Táiběi 
+PASS Fragment.querySelector: Class selector, matching element with class value using non-ASCII characters (1): .台北Táiběi 
+PASS Fragment.querySelectorAll: Class selector, matching multiple elements with class value using non-ASCII characters: .台北 
+PASS Fragment.querySelector: Class selector, matching multiple elements with class value using non-ASCII characters: .台北 
+PASS Fragment.querySelectorAll: Class selector, chained, matching element with multiple class values using non-ASCII characters (1): .台北Táiběi.台北 
+PASS Fragment.querySelector: Class selector, chained, matching element with multiple class values using non-ASCII characters (1): .台北Táiběi.台北 
+PASS Fragment.querySelectorAll: Class selector, matching element with class with escaped character: .foo\:bar 
+PASS Fragment.querySelector: Class selector, matching element with class with escaped character: .foo\:bar 
+PASS Fragment.querySelectorAll: Class selector, matching element with class with escaped character: .test\.foo\[5\]bar 
+PASS Fragment.querySelector: Class selector, matching element with class with escaped character: .test\.foo\[5\]bar 
+PASS Fragment.querySelectorAll: ID selector, matching element with specified id: #id #id-div1 
+PASS Fragment.querySelector: ID selector, matching element with specified id: #id #id-div1 
+PASS Fragment.querySelectorAll: ID selector, chained, matching element with specified id: #id-div1, #id-div1 
+PASS Fragment.querySelector: ID selector, chained, matching element with specified id: #id-div1, #id-div1 
+PASS Fragment.querySelectorAll: ID selector, chained, matching element with specified id: #id-div1, #id-div2 
+PASS Fragment.querySelector: ID selector, chained, matching element with specified id: #id-div1, #id-div2 
+PASS Fragment.querySelectorAll: ID Selector, chained, with type selector: div#id-div1, div#id-div2 
+PASS Fragment.querySelector: ID Selector, chained, with type selector: div#id-div1, div#id-div2 
+PASS Fragment.querySelectorAll: ID selector, not matching non-existent descendant: #id #none 
+PASS Fragment.querySelector: ID selector, not matching non-existent descendant: #id #none 
+PASS Fragment.querySelectorAll: ID selector, not matching non-existent ancestor: #none #id-div1 
+PASS Fragment.querySelector: ID selector, not matching non-existent ancestor: #none #id-div1 
+PASS Fragment.querySelectorAll: ID selector, matching multiple elements with duplicate id: #id-li-duplicate 
+PASS Fragment.querySelector: ID selector, matching multiple elements with duplicate id: #id-li-duplicate 
+PASS Fragment.querySelectorAll: ID selector, matching id value using non-ASCII characters (1): #台北Táiběi 
+PASS Fragment.querySelector: ID selector, matching id value using non-ASCII characters (1): #台北Táiběi 
+PASS Fragment.querySelectorAll: ID selector, matching id value using non-ASCII characters (2): #台北 
+PASS Fragment.querySelector: ID selector, matching id value using non-ASCII characters (2): #台北 
+PASS Fragment.querySelectorAll: ID selector, matching id values using non-ASCII characters (1): #台北Táiběi, #台北 
+PASS Fragment.querySelector: ID selector, matching id values using non-ASCII characters (1): #台北Táiběi, #台北 
+PASS Fragment.querySelectorAll: ID selector, matching element with id with escaped character: #\#foo\:bar 
+PASS Fragment.querySelector: ID selector, matching element with id with escaped character: #\#foo\:bar 
+PASS Fragment.querySelectorAll: ID selector, matching element with id with escaped character: #test\.foo\[5\]bar 
+PASS Fragment.querySelector: ID selector, matching element with id with escaped character: #test\.foo\[5\]bar 
+PASS Fragment.querySelectorAll: Namespace selector, matching element with any namespace: #any-namespace *|div 
+PASS Fragment.querySelector: Namespace selector, matching element with any namespace: #any-namespace *|div 
+FAIL Fragment.querySelectorAll: Namespace selector, matching div elements in no namespace only: #no-namespace |div assert_equals: The method should return the expected number of matches. expected 1 but got 4
+FAIL Fragment.querySelector: Namespace selector, matching div elements in no namespace only: #no-namespace |div assert_equals: The method should return the first match. expected &quot;no-namespace-div3&quot; but got &quot;no-namespace-div1&quot;
+FAIL Fragment.querySelectorAll: Namespace selector, matching any elements in no namespace only: #no-namespace |* assert_equals: The method should return the expected number of matches. expected 1 but got 4
+FAIL Fragment.querySelector: Namespace selector, matching any elements in no namespace only: #no-namespace |* assert_equals: The method should return the first match. expected &quot;no-namespace-div3&quot; but got &quot;no-namespace-div1&quot;
+PASS Fragment.querySelectorAll: Descendant combinator, matching element that is a descendant of an element with id: #descendant div 
+PASS Fragment.querySelector: Descendant combinator, matching element that is a descendant of an element with id: #descendant div 
+PASS Fragment.querySelectorAll: Descendant combinator, matching element with id that is a descendant of an element: div #descendant-div1 
+PASS Fragment.querySelector: Descendant combinator, matching element with id that is a descendant of an element: div #descendant-div1 
+PASS Fragment.querySelectorAll: Descendant combinator, matching element with id that is a descendant of an element with id: #descendant #descendant-div2 
+PASS Fragment.querySelector: Descendant combinator, matching element with id that is a descendant of an element with id: #descendant #descendant-div2 
+PASS Fragment.querySelectorAll: Descendant combinator, matching element with class that is a descendant of an element with id: #descendant .descendant-div2 
+PASS Fragment.querySelector: Descendant combinator, matching element with class that is a descendant of an element with id: #descendant .descendant-div2 
+PASS Fragment.querySelectorAll: Descendant combinator, matching element with class that is a descendant of an element with class: .descendant-div1 .descendant-div3 
+PASS Fragment.querySelector: Descendant combinator, matching element with class that is a descendant of an element with class: .descendant-div1 .descendant-div3 
+PASS Fragment.querySelectorAll: Descendant combinator, not matching element with id that is not a descendant of an element with id: #descendant-div1 #descendant-div4 
+PASS Fragment.querySelector: Descendant combinator, not matching element with id that is not a descendant of an element with id: #descendant-div1 #descendant-div4 
+PASS Fragment.querySelectorAll: Descendant combinator, whitespace characters: #descendant        
+#descendant-div2 
+PASS Fragment.querySelector: Descendant combinator, whitespace characters: #descendant        
+#descendant-div2 
+PASS Fragment.querySelectorAll: Child combinator, matching element that is a child of an element with id: #child&gt;div 
+PASS Fragment.querySelector: Child combinator, matching element that is a child of an element with id: #child&gt;div 
+PASS Fragment.querySelectorAll: Child combinator, matching element with id that is a child of an element: div&gt;#child-div1 
+PASS Fragment.querySelector: Child combinator, matching element with id that is a child of an element: div&gt;#child-div1 
+PASS Fragment.querySelectorAll: Child combinator, matching element with id that is a child of an element with id: #child&gt;#child-div1 
+PASS Fragment.querySelector: Child combinator, matching element with id that is a child of an element with id: #child&gt;#child-div1 
+PASS Fragment.querySelectorAll: Child combinator, matching element with id that is a child of an element with class: #child-div1&gt;.child-div2 
+PASS Fragment.querySelector: Child combinator, matching element with id that is a child of an element with class: #child-div1&gt;.child-div2 
+PASS Fragment.querySelectorAll: Child combinator, matching element with class that is a child of an element with class: .child-div1&gt;.child-div2 
+PASS Fragment.querySelector: Child combinator, matching element with class that is a child of an element with class: .child-div1&gt;.child-div2 
+PASS Fragment.querySelectorAll: Child combinator, not matching element with id that is not a child of an element with id: #child&gt;#child-div3 
+PASS Fragment.querySelector: Child combinator, not matching element with id that is not a child of an element with id: #child&gt;#child-div3 
+PASS Fragment.querySelectorAll: Child combinator, not matching element with id that is not a child of an element with class: #child-div1&gt;.child-div3 
+PASS Fragment.querySelector: Child combinator, not matching element with id that is not a child of an element with class: #child-div1&gt;.child-div3 
+PASS Fragment.querySelectorAll: Child combinator, not matching element with class that is not a child of an element with class: .child-div1&gt;.child-div3 
+PASS Fragment.querySelector: Child combinator, not matching element with class that is not a child of an element with class: .child-div1&gt;.child-div3 
+PASS Fragment.querySelectorAll: Child combinator, surrounded by whitespace: #child-div1        
+&gt;        
+#child-div2 
+PASS Fragment.querySelector: Child combinator, surrounded by whitespace: #child-div1        
+&gt;        
+#child-div2 
+PASS Fragment.querySelectorAll: Child combinator, whitespace after: #child-div1&gt;        
+#child-div2 
+PASS Fragment.querySelector: Child combinator, whitespace after: #child-div1&gt;        
+#child-div2 
+PASS Fragment.querySelectorAll: Child combinator, whitespace before: #child-div1        
+&gt;#child-div2 
+PASS Fragment.querySelector: Child combinator, whitespace before: #child-div1        
+&gt;#child-div2 
+PASS Fragment.querySelectorAll: Child combinator, no whitespace: #child-div1&gt;#child-div2 
+PASS Fragment.querySelector: Child combinator, no whitespace: #child-div1&gt;#child-div2 
+PASS Fragment.querySelectorAll: Adjacent sibling combinator, matching element that is an adjacent sibling of an element with id: #adjacent-div2+div 
+PASS Fragment.querySelector: Adjacent sibling combinator, matching element that is an adjacent sibling of an element with id: #adjacent-div2+div 
+PASS Fragment.querySelectorAll: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element: div+#adjacent-div4 
+PASS Fragment.querySelector: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element: div+#adjacent-div4 
+PASS Fragment.querySelectorAll: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element with id: #adjacent-div2+#adjacent-div4 
+PASS Fragment.querySelector: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element with id: #adjacent-div2+#adjacent-div4 
+PASS Fragment.querySelectorAll: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with id: #adjacent-div2+.adjacent-div4 
+PASS Fragment.querySelector: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with id: #adjacent-div2+.adjacent-div4 
+PASS Fragment.querySelectorAll: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with class: .adjacent-div2+.adjacent-div4 
+PASS Fragment.querySelector: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with class: .adjacent-div2+.adjacent-div4 
+PASS Fragment.querySelectorAll: Adjacent sibling combinator, matching p element that is an adjacent sibling of a div element: #adjacent div+p 
+PASS Fragment.querySelector: Adjacent sibling combinator, matching p element that is an adjacent sibling of a div element: #adjacent div+p 
+PASS Fragment.querySelectorAll: Adjacent sibling combinator, not matching element with id that is not an adjacent sibling of an element with id: #adjacent-div2+#adjacent-p2, #adjacent-div2+#adjacent-div1 
+PASS Fragment.querySelector: Adjacent sibling combinator, not matching element with id that is not an adjacent sibling of an element with id: #adjacent-div2+#adjacent-p2, #adjacent-div2+#adjacent-div1 
+PASS Fragment.querySelectorAll: Adjacent sibling combinator, surrounded by whitespace: #adjacent-p2        
++        
+#adjacent-p3 
+PASS Fragment.querySelector: Adjacent sibling combinator, surrounded by whitespace: #adjacent-p2        
++        
+#adjacent-p3 
+PASS Fragment.querySelectorAll: Adjacent sibling combinator, whitespace after: #adjacent-p2+        
+#adjacent-p3 
+PASS Fragment.querySelector: Adjacent sibling combinator, whitespace after: #adjacent-p2+        
+#adjacent-p3 
+PASS Fragment.querySelectorAll: Adjacent sibling combinator, whitespace before: #adjacent-p2        
++#adjacent-p3 
+PASS Fragment.querySelector: Adjacent sibling combinator, whitespace before: #adjacent-p2        
++#adjacent-p3 
+PASS Fragment.querySelectorAll: Adjacent sibling combinator, no whitespace: #adjacent-p2+#adjacent-p3 
+PASS Fragment.querySelector: Adjacent sibling combinator, no whitespace: #adjacent-p2+#adjacent-p3 
+PASS Fragment.querySelectorAll: General sibling combinator, matching element that is a sibling of an element with id: #sibling-div2~div 
+PASS Fragment.querySelector: General sibling combinator, matching element that is a sibling of an element with id: #sibling-div2~div 
+PASS Fragment.querySelectorAll: General sibling combinator, matching element with id that is a sibling of an element: div~#sibling-div4 
+PASS Fragment.querySelector: General sibling combinator, matching element with id that is a sibling of an element: div~#sibling-div4 
+PASS Fragment.querySelectorAll: General sibling combinator, matching element with id that is a sibling of an element with id: #sibling-div2~#sibling-div4 
+PASS Fragment.querySelector: General sibling combinator, matching element with id that is a sibling of an element with id: #sibling-div2~#sibling-div4 
+PASS Fragment.querySelectorAll: General sibling combinator, matching element with class that is a sibling of an element with id: #sibling-div2~.sibling-div 
+PASS Fragment.querySelector: General sibling combinator, matching element with class that is a sibling of an element with id: #sibling-div2~.sibling-div 
+PASS Fragment.querySelectorAll: General sibling combinator, matching p element that is a sibling of a div element: #sibling div~p 
+PASS Fragment.querySelector: General sibling combinator, matching p element that is a sibling of a div element: #sibling div~p 
+PASS Fragment.querySelectorAll: General sibling combinator, not matching element with id that is not a sibling after a p element: #sibling&gt;p~div 
+PASS Fragment.querySelector: General sibling combinator, not matching element with id that is not a sibling after a p element: #sibling&gt;p~div 
+PASS Fragment.querySelectorAll: General sibling combinator, not matching element with id that is not a sibling after an element with id: #sibling-div2~#sibling-div3, #sibling-div2~#sibling-div1 
+PASS Fragment.querySelector: General sibling combinator, not matching element with id that is not a sibling after an element with id: #sibling-div2~#sibling-div3, #sibling-div2~#sibling-div1 
+PASS Fragment.querySelectorAll: General sibling combinator, surrounded by whitespace: #sibling-p2        
+~        
+#sibling-p3 
+PASS Fragment.querySelector: General sibling combinator, surrounded by whitespace: #sibling-p2        
+~        
+#sibling-p3 
+PASS Fragment.querySelectorAll: General sibling combinator, whitespace after: #sibling-p2~        
+#sibling-p3 
+PASS Fragment.querySelector: General sibling combinator, whitespace after: #sibling-p2~        
+#sibling-p3 
+PASS Fragment.querySelectorAll: General sibling combinator, whitespace before: #sibling-p2        
+~#sibling-p3 
+PASS Fragment.querySelector: General sibling combinator, whitespace before: #sibling-p2        
+~#sibling-p3 
+PASS Fragment.querySelectorAll: General sibling combinator, no whitespace: #sibling-p2~#sibling-p3 
+PASS Fragment.querySelector: General sibling combinator, no whitespace: #sibling-p2~#sibling-p3 
+PASS Fragment.querySelectorAll: Syntax, group of selectors separator, surrounded by whitespace: #group em        

+,        

+#group strong 
+PASS Fragment.querySelector: Syntax, group of selectors separator, surrounded by whitespace: #group em        

+,        

+#group strong 
+PASS Fragment.querySelectorAll: Syntax, group of selectors separator, whitespace after: #group em,        
+#group strong 
+PASS Fragment.querySelector: Syntax, group of selectors separator, whitespace after: #group em,        
+#group strong 
+PASS Fragment.querySelectorAll: Syntax, group of selectors separator, whitespace before: #group em        
+,#group strong 
+PASS Fragment.querySelector: Syntax, group of selectors separator, whitespace before: #group em        
+,#group strong 
+PASS Fragment.querySelectorAll: Syntax, group of selectors separator, no whitespace: #group em,#group strong 
+PASS Fragment.querySelector: Syntax, group of selectors separator, no whitespace: #group em,#group strong 
+PASS In-document Element.querySelectorAll: Type selector, matching html element: html 
+PASS In-document Element.querySelector: Type selector, matching html element: html 
+PASS In-document Element.querySelectorAll: Type selector, matching body element: body 
+PASS In-document Element.querySelector: Type selector, matching body element: body 
+PASS In-document Element.querySelectorAll: Universal selector, matching all children of element with specified ID: #universal&gt;* 
+PASS In-document Element.querySelector: Universal selector, matching all children of element with specified ID: #universal&gt;* 
+PASS In-document Element.querySelectorAll: Universal selector, matching all grandchildren of element with specified ID: #universal&gt;*&gt;* 
+PASS In-document Element.querySelector: Universal selector, matching all grandchildren of element with specified ID: #universal&gt;*&gt;* 
+PASS In-document Element.querySelectorAll: Universal selector, matching all children of empty element with specified ID: #empty&gt;* 
+PASS In-document Element.querySelector: Universal selector, matching all children of empty element with specified ID: #empty&gt;* 
+PASS In-document Element.querySelectorAll: Universal selector, matching all descendants of element with specified ID: #universal * 
+PASS In-document Element.querySelector: Universal selector, matching all descendants of element with specified ID: #universal * 
+PASS In-document Element.querySelectorAll: Attribute presence selector, matching align attribute with value: .attr-presence-div1[align] 
+PASS In-document Element.querySelector: Attribute presence selector, matching align attribute with value: .attr-presence-div1[align] 
+PASS In-document Element.querySelectorAll: Attribute presence selector, matching align attribute with empty value: .attr-presence-div2[align] 
+PASS In-document Element.querySelector: Attribute presence selector, matching align attribute with empty value: .attr-presence-div2[align] 
+PASS In-document Element.querySelectorAll: Attribute presence selector, not matching title attribute, case sensitivity: #attr-presence [TiTlE] 
+PASS In-document Element.querySelector: Attribute presence selector, not matching title attribute, case sensitivity: #attr-presence [TiTlE] 
+PASS In-document Element.querySelectorAll: Attribute presence selector, matching custom data-* attribute: [data-attr-presence] 
+PASS In-document Element.querySelector: Attribute presence selector, matching custom data-* attribute: [data-attr-presence] 
+PASS In-document Element.querySelectorAll: Attribute presence selector, not matching attribute with similar name: .attr-presence-div3[align], .attr-presence-div4[align] 
+PASS In-document Element.querySelector: Attribute presence selector, not matching attribute with similar name: .attr-presence-div3[align], .attr-presence-div4[align] 
+PASS In-document Element.querySelectorAll: Attribute presence selector, matching attribute with non-ASCII characters: ul[data-中文] 
+PASS In-document Element.querySelector: Attribute presence selector, matching attribute with non-ASCII characters: ul[data-中文] 
+PASS In-document Element.querySelectorAll: Attribute presence selector, not matching default option without selected attribute: #attr-presence-select1 option[selected] 
+PASS In-document Element.querySelector: Attribute presence selector, not matching default option without selected attribute: #attr-presence-select1 option[selected] 
+PASS In-document Element.querySelectorAll: Attribute presence selector, matching option with selected attribute: #attr-presence-select2 option[selected] 
+PASS In-document Element.querySelector: Attribute presence selector, matching option with selected attribute: #attr-presence-select2 option[selected] 
+PASS In-document Element.querySelectorAll: Attribute presence selector, matching multiple options with selected attributes: #attr-presence-select3 option[selected] 
+PASS In-document Element.querySelector: Attribute presence selector, matching multiple options with selected attributes: #attr-presence-select3 option[selected] 
+PASS In-document Element.querySelectorAll: Attribute value selector, matching align attribute with value: #attr-value [align=&quot;center&quot;] 
+PASS In-document Element.querySelector: Attribute value selector, matching align attribute with value: #attr-value [align=&quot;center&quot;] 
+PASS In-document Element.querySelectorAll: Attribute value selector, matching align attribute with empty value: #attr-value [align=&quot;&quot;] 
+PASS In-document Element.querySelector: Attribute value selector, matching align attribute with empty value: #attr-value [align=&quot;&quot;] 
+PASS In-document Element.querySelectorAll: Attribute value selector, not matching align attribute with partial value: #attr-value [align=&quot;c&quot;] 
+PASS In-document Element.querySelector: Attribute value selector, not matching align attribute with partial value: #attr-value [align=&quot;c&quot;] 
+PASS In-document Element.querySelectorAll: Attribute value selector, not matching align attribute with incorrect value: #attr-value [align=&quot;centera&quot;] 
+PASS In-document Element.querySelector: Attribute value selector, not matching align attribute with incorrect value: #attr-value [align=&quot;centera&quot;] 
+PASS In-document Element.querySelectorAll: Attribute value selector, matching custom data-* attribute with unicode escaped value: [data-attr-value=&quot;\e9&quot;] 
+PASS In-document Element.querySelector: Attribute value selector, matching custom data-* attribute with unicode escaped value: [data-attr-value=&quot;\e9&quot;] 
+PASS In-document Element.querySelectorAll: Attribute value selector, matching custom data-* attribute with escaped character: [data-attr-value_foo=&quot;\e9&quot;] 
+PASS In-document Element.querySelector: Attribute value selector, matching custom data-* attribute with escaped character: [data-attr-value_foo=&quot;\e9&quot;] 
+PASS In-document Element.querySelectorAll: Attribute value selector with single-quoted value, matching multiple inputs with type attributes: #attr-value input[type='hidden'],#attr-value input[type='radio'] 
+PASS In-document Element.querySelector: Attribute value selector with single-quoted value, matching multiple inputs with type attributes: #attr-value input[type='hidden'],#attr-value input[type='radio'] 
+PASS In-document Element.querySelectorAll: Attribute value selector with double-quoted value, matching multiple inputs with type attributes: #attr-value input[type=&quot;hidden&quot;],#attr-value input[type='radio'] 
+PASS In-document Element.querySelector: Attribute value selector with double-quoted value, matching multiple inputs with type attributes: #attr-value input[type=&quot;hidden&quot;],#attr-value input[type='radio'] 
+PASS In-document Element.querySelectorAll: Attribute value selector with unquoted value, matching multiple inputs with type attributes: #attr-value input[type=hidden],#attr-value input[type=radio] 
+PASS In-document Element.querySelector: Attribute value selector with unquoted value, matching multiple inputs with type attributes: #attr-value input[type=hidden],#attr-value input[type=radio] 
+PASS In-document Element.querySelectorAll: Attribute value selector, matching attribute with value using non-ASCII characters: [data-attr-value=中文] 
+PASS In-document Element.querySelector: Attribute value selector, matching attribute with value using non-ASCII characters: [data-attr-value=中文] 
+PASS In-document Element.querySelectorAll: Attribute whitespace-separated list selector, matching class attribute with value: #attr-whitespace [class~=&quot;div1&quot;] 
+PASS In-document Element.querySelector: Attribute whitespace-separated list selector, matching class attribute with value: #attr-whitespace [class~=&quot;div1&quot;] 
+PASS In-document Element.querySelectorAll: Attribute whitespace-separated list selector, not matching class attribute with empty value: #attr-whitespace [class~=&quot;&quot;] 
+PASS In-document Element.querySelector: Attribute whitespace-separated list selector, not matching class attribute with empty value: #attr-whitespace [class~=&quot;&quot;] 
+PASS In-document Element.querySelectorAll: Attribute whitespace-separated list selector, not matching class attribute with partial value: [data-attr-whitespace~=&quot;div&quot;] 
+PASS In-document Element.querySelector: Attribute whitespace-separated list selector, not matching class attribute with partial value: [data-attr-whitespace~=&quot;div&quot;] 
+PASS In-document Element.querySelectorAll: Attribute whitespace-separated list selector, matching custom data-* attribute with unicode escaped value: [data-attr-whitespace~=&quot;\0000e9&quot;] 
+PASS In-document Element.querySelector: Attribute whitespace-separated list selector, matching custom data-* attribute with unicode escaped value: [data-attr-whitespace~=&quot;\0000e9&quot;] 
+PASS In-document Element.querySelectorAll: Attribute whitespace-separated list selector, matching custom data-* attribute with escaped character: [data-attr-whitespace_foo~=&quot;\e9&quot;] 
+PASS In-document Element.querySelector: Attribute whitespace-separated list selector, matching custom data-* attribute with escaped character: [data-attr-whitespace_foo~=&quot;\e9&quot;] 
+PASS In-document Element.querySelectorAll: Attribute whitespace-separated list selector with single-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~='bookmark'],  #attr-whitespace a[rel~='nofollow'] 
+PASS In-document Element.querySelector: Attribute whitespace-separated list selector with single-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~='bookmark'],  #attr-whitespace a[rel~='nofollow'] 
+PASS In-document Element.querySelectorAll: Attribute whitespace-separated list selector with double-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=&quot;bookmark&quot;],#attr-whitespace a[rel~='nofollow'] 
+PASS In-document Element.querySelector: Attribute whitespace-separated list selector with double-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=&quot;bookmark&quot;],#attr-whitespace a[rel~='nofollow'] 
+PASS In-document Element.querySelectorAll: Attribute whitespace-separated list selector with unquoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=bookmark],    #attr-whitespace a[rel~=nofollow] 
+PASS In-document Element.querySelector: Attribute whitespace-separated list selector with unquoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=bookmark],    #attr-whitespace a[rel~=nofollow] 
+PASS In-document Element.querySelectorAll: Attribute whitespace-separated list selector with double-quoted value, not matching value with space: #attr-whitespace a[rel~=&quot;book mark&quot;] 
+PASS In-document Element.querySelector: Attribute whitespace-separated list selector with double-quoted value, not matching value with space: #attr-whitespace a[rel~=&quot;book mark&quot;] 
+PASS In-document Element.querySelectorAll: Attribute whitespace-separated list selector, matching title attribute with value using non-ASCII characters: #attr-whitespace [title~=中文] 
+PASS In-document Element.querySelector: Attribute whitespace-separated list selector, matching title attribute with value using non-ASCII characters: #attr-whitespace [title~=中文] 
+PASS In-document Element.querySelectorAll: Attribute hyphen-separated list selector, not matching unspecified lang attribute: #attr-hyphen-div1[lang|=&quot;en&quot;] 
+PASS In-document Element.querySelector: Attribute hyphen-separated list selector, not matching unspecified lang attribute: #attr-hyphen-div1[lang|=&quot;en&quot;] 
+PASS In-document Element.querySelectorAll: Attribute hyphen-separated list selector, matching lang attribute with exact value: #attr-hyphen-div2[lang|=&quot;fr&quot;] 
+PASS In-document Element.querySelector: Attribute hyphen-separated list selector, matching lang attribute with exact value: #attr-hyphen-div2[lang|=&quot;fr&quot;] 
+PASS In-document Element.querySelectorAll: Attribute hyphen-separated list selector, matching lang attribute with partial value: #attr-hyphen-div3[lang|=&quot;en&quot;] 
+PASS In-document Element.querySelector: Attribute hyphen-separated list selector, matching lang attribute with partial value: #attr-hyphen-div3[lang|=&quot;en&quot;] 
+PASS In-document Element.querySelectorAll: Attribute hyphen-separated list selector, not matching incorrect value: #attr-hyphen-div4[lang|=&quot;es-AR&quot;] 
+PASS In-document Element.querySelector: Attribute hyphen-separated list selector, not matching incorrect value: #attr-hyphen-div4[lang|=&quot;es-AR&quot;] 
+PASS In-document Element.querySelectorAll: Attribute begins with selector, matching href attributes beginning with specified substring: #attr-begins a[href^=&quot;http://www&quot;] 
+PASS In-document Element.querySelector: Attribute begins with selector, matching href attributes beginning with specified substring: #attr-begins a[href^=&quot;http://www&quot;] 
+PASS In-document Element.querySelectorAll: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^=&quot;en-&quot;] 
+PASS In-document Element.querySelector: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^=&quot;en-&quot;] 
+PASS In-document Element.querySelectorAll: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
+PASS In-document Element.querySelector: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
+PASS In-document Element.querySelectorAll: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=' apple'] 
+PASS In-document Element.querySelector: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=' apple'] 
+PASS In-document Element.querySelectorAll: Attribute begins with selector with double-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=&quot; apple&quot;] 
+PASS In-document Element.querySelector: Attribute begins with selector with double-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=&quot; apple&quot;] 
+PASS In-document Element.querySelectorAll: Attribute begins with selector with unquoted value, not matching class attribute not beginning with specified substring: #attr-begins [class^= apple] 
+PASS In-document Element.querySelector: Attribute begins with selector with unquoted value, not matching class attribute not beginning with specified substring: #attr-begins [class^= apple] 
+PASS In-document Element.querySelectorAll: Attribute ends with selector, matching href attributes ending with specified substring: #attr-ends a[href$=&quot;.org&quot;] 
+PASS In-document Element.querySelector: Attribute ends with selector, matching href attributes ending with specified substring: #attr-ends a[href$=&quot;.org&quot;] 
+PASS In-document Element.querySelectorAll: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$=&quot;-CH&quot;] 
+PASS In-document Element.querySelector: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$=&quot;-CH&quot;] 
+PASS In-document Element.querySelectorAll: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
+PASS In-document Element.querySelector: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
+PASS In-document Element.querySelectorAll: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring: #attr-ends [class$='apple '] 
+PASS In-document Element.querySelector: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring: #attr-ends [class$='apple '] 
+PASS In-document Element.querySelectorAll: Attribute ends with selector with double-quoted value, matching class attribute ending with specified substring: #attr-ends [class$=&quot;apple &quot;] 
+PASS In-document Element.querySelector: Attribute ends with selector with double-quoted value, matching class attribute ending with specified substring: #attr-ends [class$=&quot;apple &quot;] 
+PASS In-document Element.querySelectorAll: Attribute ends with selector with unquoted value, not matching class attribute not ending with specified substring: #attr-ends [class$=apple ] 
+PASS In-document Element.querySelector: Attribute ends with selector with unquoted value, not matching class attribute not ending with specified substring: #attr-ends [class$=apple ] 
+PASS In-document Element.querySelectorAll: Attribute contains selector, matching href attributes beginning with specified substring: #attr-contains a[href*=&quot;http://www&quot;] 
+PASS In-document Element.querySelector: Attribute contains selector, matching href attributes beginning with specified substring: #attr-contains a[href*=&quot;http://www&quot;] 
+PASS In-document Element.querySelectorAll: Attribute contains selector, matching href attributes ending with specified substring: #attr-contains a[href*=&quot;.org&quot;] 
+PASS In-document Element.querySelector: Attribute contains selector, matching href attributes ending with specified substring: #attr-contains a[href*=&quot;.org&quot;] 
+PASS In-document Element.querySelectorAll: Attribute contains selector, matching href attributes containing specified substring: #attr-contains a[href*=&quot;.example.&quot;] 
+PASS In-document Element.querySelector: Attribute contains selector, matching href attributes containing specified substring: #attr-contains a[href*=&quot;.example.&quot;] 
+PASS In-document Element.querySelectorAll: Attribute contains selector, matching lang attributes beginning with specified substring, : #attr-contains [lang*=&quot;en-&quot;] 
+PASS In-document Element.querySelector: Attribute contains selector, matching lang attributes beginning with specified substring, : #attr-contains [lang*=&quot;en-&quot;] 
+PASS In-document Element.querySelectorAll: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*=&quot;-CH&quot;] 
+PASS In-document Element.querySelector: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*=&quot;-CH&quot;] 
+PASS In-document Element.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
+PASS In-document Element.querySelector: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
+PASS In-document Element.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring: #attr-contains [class*='orange '] 
+PASS In-document Element.querySelector: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring: #attr-contains [class*='orange '] 
+PASS In-document Element.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute containing specified substring: #attr-contains [class*='ple banana ora'] 
+PASS In-document Element.querySelector: Attribute contains selector with single-quoted value, matching class attribute containing specified substring: #attr-contains [class*='ple banana ora'] 
+PASS In-document Element.querySelectorAll: Attribute contains selector with double-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=&quot; apple&quot;] 
+PASS In-document Element.querySelector: Attribute contains selector with double-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=&quot; apple&quot;] 
+PASS In-document Element.querySelectorAll: Attribute contains selector with double-quoted value, matching class attribute ending with specified substring: #attr-contains [class*=&quot;orange &quot;] 
+PASS In-document Element.querySelector: Attribute contains selector with double-quoted value, matching class attribute ending with specified substring: #attr-contains [class*=&quot;orange &quot;] 
+PASS In-document Element.querySelectorAll: Attribute contains selector with double-quoted value, matching class attribute containing specified substring: #attr-contains [class*=&quot;ple banana ora&quot;] 
+PASS In-document Element.querySelector: Attribute contains selector with double-quoted value, matching class attribute containing specified substring: #attr-contains [class*=&quot;ple banana ora&quot;] 
+PASS In-document Element.querySelectorAll: Attribute contains selector with unquoted value, matching class attribute beginning with specified substring: #attr-contains [class*= apple] 
+PASS In-document Element.querySelector: Attribute contains selector with unquoted value, matching class attribute beginning with specified substring: #attr-contains [class*= apple] 
+PASS In-document Element.querySelectorAll: Attribute contains selector with unquoted value, matching class attribute ending with specified substring: #attr-contains [class*=orange ] 
+PASS In-document Element.querySelector: Attribute contains selector with unquoted value, matching class attribute ending with specified substring: #attr-contains [class*=orange ] 
+PASS In-document Element.querySelectorAll: Attribute contains selector with unquoted value, matching class attribute containing specified substring: #attr-contains [class*= banana ] 
+PASS In-document Element.querySelector: Attribute contains selector with unquoted value, matching class attribute containing specified substring: #attr-contains [class*= banana ] 
+PASS In-document Element.querySelectorAll: :root pseudo-class selector, not matching document root element: :root 
+PASS In-document Element.querySelector: :root pseudo-class selector, not matching document root element: :root 
+PASS In-document Element.querySelectorAll: :nth-child selector, matching the third child element: #pseudo-nth-table1 :nth-child(3) 
+PASS In-document Element.querySelector: :nth-child selector, matching the third child element: #pseudo-nth-table1 :nth-child(3) 
+PASS In-document Element.querySelectorAll: :nth-child selector, matching every third child element: #pseudo-nth li:nth-child(3n) 
+PASS In-document Element.querySelector: :nth-child selector, matching every third child element: #pseudo-nth li:nth-child(3n) 
+PASS In-document Element.querySelectorAll: :nth-child selector, matching every second child element, starting from the fourth: #pseudo-nth li:nth-child(2n+4) 
+PASS In-document Element.querySelector: :nth-child selector, matching every second child element, starting from the fourth: #pseudo-nth li:nth-child(2n+4) 
+PASS In-document Element.querySelectorAll: :nth-child selector, matching every fourth child element, starting from the third: #pseudo-nth-p1 :nth-child(4n-1) 
+PASS In-document Element.querySelector: :nth-child selector, matching every fourth child element, starting from the third: #pseudo-nth-p1 :nth-child(4n-1) 
+PASS In-document Element.querySelectorAll: :nth-last-child selector, matching the third last child element: #pseudo-nth-table1 :nth-last-child(3) 
+PASS In-document Element.querySelector: :nth-last-child selector, matching the third last child element: #pseudo-nth-table1 :nth-last-child(3) 
+PASS In-document Element.querySelectorAll: :nth-last-child selector, matching every third child element from the end: #pseudo-nth li:nth-last-child(3n) 
+PASS In-document Element.querySelector: :nth-last-child selector, matching every third child element from the end: #pseudo-nth li:nth-last-child(3n) 
+PASS In-document Element.querySelectorAll: :nth-last-child selector, matching every second child element from the end, starting from the fourth last: #pseudo-nth li:nth-last-child(2n+4) 
+PASS In-document Element.querySelector: :nth-last-child selector, matching every second child element from the end, starting from the fourth last: #pseudo-nth li:nth-last-child(2n+4) 
+PASS In-document Element.querySelectorAll: :nth-last-child selector, matching every fourth element from the end, starting from the third last: #pseudo-nth-p1 :nth-last-child(4n-1) 
+PASS In-document Element.querySelector: :nth-last-child selector, matching every fourth element from the end, starting from the third last: #pseudo-nth-p1 :nth-last-child(4n-1) 
+PASS In-document Element.querySelectorAll: :nth-of-type selector, matching the third em element: #pseudo-nth-p1 em:nth-of-type(3) 
+PASS In-document Element.querySelector: :nth-of-type selector, matching the third em element: #pseudo-nth-p1 em:nth-of-type(3) 
+PASS In-document Element.querySelectorAll: :nth-of-type selector, matching every second element of their type: #pseudo-nth-p1 :nth-of-type(2n) 
+PASS In-document Element.querySelector: :nth-of-type selector, matching every second element of their type: #pseudo-nth-p1 :nth-of-type(2n) 
+PASS In-document Element.querySelectorAll: :nth-of-type selector, matching every second elemetn of their type, starting from the first: #pseudo-nth-p1 span:nth-of-type(2n-1) 
+PASS In-document Element.querySelector: :nth-of-type selector, matching every second elemetn of their type, starting from the first: #pseudo-nth-p1 span:nth-of-type(2n-1) 
+PASS In-document Element.querySelectorAll: :nth-last-of-type selector, matching the thrid last em element: #pseudo-nth-p1 em:nth-last-of-type(3) 
+PASS In-document Element.querySelector: :nth-last-of-type selector, matching the thrid last em element: #pseudo-nth-p1 em:nth-last-of-type(3) 
+PASS In-document Element.querySelectorAll: :nth-last-of-type selector, matching every second last element of their type: #pseudo-nth-p1 :nth-last-of-type(2n) 
+PASS In-document Element.querySelector: :nth-last-of-type selector, matching every second last element of their type: #pseudo-nth-p1 :nth-last-of-type(2n) 
+PASS In-document Element.querySelectorAll: :nth-last-of-type selector, matching every second last element of their type, starting from the last: #pseudo-nth-p1 span:nth-last-of-type(2n-1) 
+PASS In-document Element.querySelector: :nth-last-of-type selector, matching every second last element of their type, starting from the last: #pseudo-nth-p1 span:nth-last-of-type(2n-1) 
+PASS In-document Element.querySelectorAll: :first-of-type selector, matching the first em element: #pseudo-nth-p1 em:first-of-type 
+PASS In-document Element.querySelector: :first-of-type selector, matching the first em element: #pseudo-nth-p1 em:first-of-type 
+PASS In-document Element.querySelectorAll: :first-of-type selector, matching the first of every type of element: #pseudo-nth-p1 :first-of-type 
+PASS In-document Element.querySelector: :first-of-type selector, matching the first of every type of element: #pseudo-nth-p1 :first-of-type 
+PASS In-document Element.querySelectorAll: :first-of-type selector, matching the first td element in each table row: #pseudo-nth-table1 tr :first-of-type 
+PASS In-document Element.querySelector: :first-of-type selector, matching the first td element in each table row: #pseudo-nth-table1 tr :first-of-type 
+PASS In-document Element.querySelectorAll: :last-of-type selector, matching the last em elemnet: #pseudo-nth-p1 em:last-of-type 
+PASS In-document Element.querySelector: :last-of-type selector, matching the last em elemnet: #pseudo-nth-p1 em:last-of-type 
+PASS In-document Element.querySelectorAll: :last-of-type selector, matching the last of every type of element: #pseudo-nth-p1 :last-of-type 
+PASS In-document Element.querySelector: :last-of-type selector, matching the last of every type of element: #pseudo-nth-p1 :last-of-type 
+PASS In-document Element.querySelectorAll: :last-of-type selector, matching the last td element in each table row: #pseudo-nth-table1 tr :last-of-type 
+PASS In-document Element.querySelector: :last-of-type selector, matching the last td element in each table row: #pseudo-nth-table1 tr :last-of-type 
+PASS In-document Element.querySelectorAll: :first-child pseudo-class selector, matching first child div element: #pseudo-first-child div:first-child 
+PASS In-document Element.querySelector: :first-child pseudo-class selector, matching first child div element: #pseudo-first-child div:first-child 
+PASS In-document Element.querySelectorAll: :first-child pseudo-class selector, doesn't match non-first-child elements: .pseudo-first-child-div2:first-child, .pseudo-first-child-div3:first-child 
+PASS In-document Element.querySelector: :first-child pseudo-class selector, doesn't match non-first-child elements: .pseudo-first-child-div2:first-child, .pseudo-first-child-div3:first-child 
+PASS In-document Element.querySelectorAll: :first-child pseudo-class selector, matching first-child of multiple elements: #pseudo-first-child span:first-child 
+PASS In-document Element.querySelector: :first-child pseudo-class selector, matching first-child of multiple elements: #pseudo-first-child span:first-child 
+PASS In-document Element.querySelectorAll: :last-child pseudo-class selector, matching last child div element: #pseudo-last-child div:last-child 
+PASS In-document Element.querySelector: :last-child pseudo-class selector, matching last child div element: #pseudo-last-child div:last-child 
+PASS In-document Element.querySelectorAll: :last-child pseudo-class selector, doesn't match non-last-child elements: .pseudo-last-child-div1:last-child, .pseudo-last-child-div2:first-child 
+PASS In-document Element.querySelector: :last-child pseudo-class selector, doesn't match non-last-child elements: .pseudo-last-child-div1:last-child, .pseudo-last-child-div2:first-child 
+PASS In-document Element.querySelectorAll: :last-child pseudo-class selector, matching first-child of multiple elements: #pseudo-last-child span:last-child 
+PASS In-document Element.querySelector: :last-child pseudo-class selector, matching first-child of multiple elements: #pseudo-last-child span:last-child 
+PASS In-document Element.querySelectorAll: :pseudo-only-child pseudo-class selector, matching all only-child elements: #pseudo-only :only-child 
+PASS In-document Element.querySelector: :pseudo-only-child pseudo-class selector, matching all only-child elements: #pseudo-only :only-child 
+PASS In-document Element.querySelectorAll: :pseudo-only-child pseudo-class selector, matching only-child em elements: #pseudo-only em:only-child 
+PASS In-document Element.querySelector: :pseudo-only-child pseudo-class selector, matching only-child em elements: #pseudo-only em:only-child 
+PASS In-document Element.querySelectorAll: :pseudo-only-of-type pseudo-class selector, matching all elements with no siblings of the same type: #pseudo-only :only-of-type 
+PASS In-document Element.querySelector: :pseudo-only-of-type pseudo-class selector, matching all elements with no siblings of the same type: #pseudo-only :only-of-type 
+PASS In-document Element.querySelectorAll: :pseudo-only-of-type pseudo-class selector, matching em elements with no siblings of the same type: #pseudo-only em:only-of-type 
+PASS In-document Element.querySelector: :pseudo-only-of-type pseudo-class selector, matching em elements with no siblings of the same type: #pseudo-only em:only-of-type 
+PASS In-document Element.querySelectorAll: :empty pseudo-class selector, matching empty p elements: #pseudo-empty p:empty 
+PASS In-document Element.querySelector: :empty pseudo-class selector, matching empty p elements: #pseudo-empty p:empty 
+PASS In-document Element.querySelectorAll: :empty pseudo-class selector, matching all empty elements: #pseudo-empty :empty 
+PASS In-document Element.querySelector: :empty pseudo-class selector, matching all empty elements: #pseudo-empty :empty 
+PASS In-document Element.querySelectorAll: :link and :visited pseudo-class selectors, matching a and area elements with href attributes: #pseudo-link :link, #pseudo-link :visited 
+PASS In-document Element.querySelector: :link and :visited pseudo-class selectors, matching a and area elements with href attributes: #pseudo-link :link, #pseudo-link :visited 
+PASS In-document Element.querySelectorAll: :link and :visited pseudo-class selectors, not matching link elements with href attributes: #head :link, #head :visited 
+PASS In-document Element.querySelector: :link and :visited pseudo-class selectors, not matching link elements with href attributes: #head :link, #head :visited 
+PASS In-document Element.querySelectorAll: :link and :visited pseudo-class selectors, chained, mutually exclusive pseudo-classes match nothing: :link:visited 
+PASS In-document Element.querySelector: :link and :visited pseudo-class selectors, chained, mutually exclusive pseudo-classes match nothing: :link:visited 
+PASS In-document Element.querySelectorAll: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target 
+PASS In-document Element.querySelector: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target 
+PASS In-document Element.querySelectorAll: :lang pseudo-class selector, matching inherited language: #pseudo-lang-div1:lang(en) 
+PASS In-document Element.querySelector: :lang pseudo-class selector, matching inherited language: #pseudo-lang-div1:lang(en) 
+PASS In-document Element.querySelectorAll: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr) 
+PASS In-document Element.querySelector: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr) 
+PASS In-document Element.querySelectorAll: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en) 
+PASS In-document Element.querySelector: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en) 
+PASS In-document Element.querySelectorAll: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR) 
+PASS In-document Element.querySelector: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR) 
+PASS In-document Element.querySelectorAll: :enabled pseudo-class selector, matching all enabled form controls: #pseudo-ui :enabled 
+PASS In-document Element.querySelector: :enabled pseudo-class selector, matching all enabled form controls: #pseudo-ui :enabled 
+PASS In-document Element.querySelectorAll: :enabled pseudo-class selector, matching all disabled form controls: #pseudo-ui :disabled 
+PASS In-document Element.querySelector: :enabled pseudo-class selector, matching all disabled form controls: #pseudo-ui :disabled 
+PASS In-document Element.querySelectorAll: :checked pseudo-class selector, matching checked radio buttons and checkboxes: #pseudo-ui :checked 
+PASS In-document Element.querySelector: :checked pseudo-class selector, matching checked radio buttons and checkboxes: #pseudo-ui :checked 
+PASS In-document Element.querySelectorAll: :not pseudo-class selector, matching : #not&gt;:not(div) 
+PASS In-document Element.querySelector: :not pseudo-class selector, matching : #not&gt;:not(div) 
+PASS In-document Element.querySelectorAll: :not pseudo-class selector, matching : #not * :not(:first-child) 
+PASS In-document Element.querySelector: :not pseudo-class selector, matching : #not * :not(:first-child) 
+PASS In-document Element.querySelectorAll: :not pseudo-class selector, matching nothing: :not(*) 
+PASS In-document Element.querySelector: :not pseudo-class selector, matching nothing: :not(*) 
+PASS In-document Element.querySelectorAll: :not pseudo-class selector, matching nothing: :not(*|*) 
+PASS In-document Element.querySelector: :not pseudo-class selector, matching nothing: :not(*|*) 
+PASS In-document Element.querySelectorAll: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line 
+PASS In-document Element.querySelector: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line 
+PASS In-document Element.querySelectorAll: ::first-line pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-line 
+PASS In-document Element.querySelector: ::first-line pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-line 
+PASS In-document Element.querySelectorAll: :first-letter pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-letter 
+PASS In-document Element.querySelector: :first-letter pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-letter 
+PASS In-document Element.querySelectorAll: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter 
+PASS In-document Element.querySelector: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter 
+PASS In-document Element.querySelectorAll: :before pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:before 
+PASS In-document Element.querySelector: :before pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:before 
+PASS In-document Element.querySelectorAll: ::before pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::before 
+PASS In-document Element.querySelector: ::before pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::before 
+PASS In-document Element.querySelectorAll: :after pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:after 
+PASS In-document Element.querySelector: :after pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:after 
+PASS In-document Element.querySelectorAll: ::after pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::after 
+PASS In-document Element.querySelector: ::after pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::after 
+PASS In-document Element.querySelectorAll: Class selector, matching element with specified class: .class-p 
+PASS In-document Element.querySelector: Class selector, matching element with specified class: .class-p 
+PASS In-document Element.querySelectorAll: Class selector, chained, matching only elements with all specified classes: #class .apple.orange.banana 
+PASS In-document Element.querySelector: Class selector, chained, matching only elements with all specified classes: #class .apple.orange.banana 
+PASS In-document Element.querySelectorAll: Class Selector, chained, with type selector: div.apple.banana.orange 
+PASS In-document Element.querySelector: Class Selector, chained, with type selector: div.apple.banana.orange 
+PASS In-document Element.querySelectorAll: Class selector, matching element with class value using non-ASCII characters (1): .台北Táiběi 
+PASS In-document Element.querySelector: Class selector, matching element with class value using non-ASCII characters (1): .台北Táiběi 
+PASS In-document Element.querySelectorAll: Class selector, matching multiple elements with class value using non-ASCII characters: .台北 
+PASS In-document Element.querySelector: Class selector, matching multiple elements with class value using non-ASCII characters: .台北 
+PASS In-document Element.querySelectorAll: Class selector, chained, matching element with multiple class values using non-ASCII characters (1): .台北Táiběi.台北 
+PASS In-document Element.querySelector: Class selector, chained, matching element with multiple class values using non-ASCII characters (1): .台北Táiběi.台北 
+PASS In-document Element.querySelectorAll: Class selector, matching element with class with escaped character: .foo\:bar 
+PASS In-document Element.querySelector: Class selector, matching element with class with escaped character: .foo\:bar 
+PASS In-document Element.querySelectorAll: Class selector, matching element with class with escaped character: .test\.foo\[5\]bar 
+PASS In-document Element.querySelector: Class selector, matching element with class with escaped character: .test\.foo\[5\]bar 
+PASS In-document Element.querySelectorAll: ID selector, matching element with specified id: #id #id-div1 
+PASS In-document Element.querySelector: ID selector, matching element with specified id: #id #id-div1 
+PASS In-document Element.querySelectorAll: ID selector, chained, matching element with specified id: #id-div1, #id-div1 
+PASS In-document Element.querySelector: ID selector, chained, matching element with specified id: #id-div1, #id-div1 
+PASS In-document Element.querySelectorAll: ID selector, chained, matching element with specified id: #id-div1, #id-div2 
+PASS In-document Element.querySelector: ID selector, chained, matching element with specified id: #id-div1, #id-div2 
+PASS In-document Element.querySelectorAll: ID Selector, chained, with type selector: div#id-div1, div#id-div2 
+PASS In-document Element.querySelector: ID Selector, chained, with type selector: div#id-div1, div#id-div2 
+PASS In-document Element.querySelectorAll: ID selector, not matching non-existent descendant: #id #none 
+PASS In-document Element.querySelector: ID selector, not matching non-existent descendant: #id #none 
+PASS In-document Element.querySelectorAll: ID selector, not matching non-existent ancestor: #none #id-div1 
+PASS In-document Element.querySelector: ID selector, not matching non-existent ancestor: #none #id-div1 
+PASS In-document Element.querySelectorAll: ID selector, matching multiple elements with duplicate id: #id-li-duplicate 
+PASS In-document Element.querySelector: ID selector, matching multiple elements with duplicate id: #id-li-duplicate 
+PASS In-document Element.querySelectorAll: ID selector, matching id value using non-ASCII characters (1): #台北Táiběi 
+PASS In-document Element.querySelector: ID selector, matching id value using non-ASCII characters (1): #台北Táiběi 
+PASS In-document Element.querySelectorAll: ID selector, matching id value using non-ASCII characters (2): #台北 
+PASS In-document Element.querySelector: ID selector, matching id value using non-ASCII characters (2): #台北 
+PASS In-document Element.querySelectorAll: ID selector, matching id values using non-ASCII characters (1): #台北Táiběi, #台北 
+PASS In-document Element.querySelector: ID selector, matching id values using non-ASCII characters (1): #台北Táiběi, #台北 
+PASS In-document Element.querySelectorAll: ID selector, matching element with id with escaped character: #\#foo\:bar 
+PASS In-document Element.querySelector: ID selector, matching element with id with escaped character: #\#foo\:bar 
+PASS In-document Element.querySelectorAll: ID selector, matching element with id with escaped character: #test\.foo\[5\]bar 
+PASS In-document Element.querySelector: ID selector, matching element with id with escaped character: #test\.foo\[5\]bar 
+PASS In-document Element.querySelectorAll: Namespace selector, matching element with any namespace: #any-namespace *|div 
+PASS In-document Element.querySelector: Namespace selector, matching element with any namespace: #any-namespace *|div 
+FAIL In-document Element.querySelectorAll: Namespace selector, matching div elements in no namespace only: #no-namespace |div assert_equals: The method should return the expected number of matches. expected 1 but got 4
+FAIL In-document Element.querySelector: Namespace selector, matching div elements in no namespace only: #no-namespace |div assert_equals: The method should return the first match. expected &quot;no-namespace-div3&quot; but got &quot;no-namespace-div1&quot;
+FAIL In-document Element.querySelectorAll: Namespace selector, matching any elements in no namespace only: #no-namespace |* assert_equals: The method should return the expected number of matches. expected 1 but got 4
+FAIL In-document Element.querySelector: Namespace selector, matching any elements in no namespace only: #no-namespace |* assert_equals: The method should return the first match. expected &quot;no-namespace-div3&quot; but got &quot;no-namespace-div1&quot;
+PASS In-document Element.querySelectorAll: Descendant combinator, matching element that is a descendant of an element with id: #descendant div 
+PASS In-document Element.querySelector: Descendant combinator, matching element that is a descendant of an element with id: #descendant div 
+PASS In-document Element.querySelectorAll: Descendant combinator, matching element with id that is a descendant of an element: body #descendant-div1 
+PASS In-document Element.querySelector: Descendant combinator, matching element with id that is a descendant of an element: body #descendant-div1 
+PASS In-document Element.querySelectorAll: Descendant combinator, matching element with id that is a descendant of an element: div #descendant-div1 
+PASS In-document Element.querySelector: Descendant combinator, matching element with id that is a descendant of an element: div #descendant-div1 
+PASS In-document Element.querySelectorAll: Descendant combinator, matching element with id that is a descendant of an element with id: #descendant #descendant-div2 
+PASS In-document Element.querySelector: Descendant combinator, matching element with id that is a descendant of an element with id: #descendant #descendant-div2 
+PASS In-document Element.querySelectorAll: Descendant combinator, matching element with class that is a descendant of an element with id: #descendant .descendant-div2 
+PASS In-document Element.querySelector: Descendant combinator, matching element with class that is a descendant of an element with id: #descendant .descendant-div2 
+PASS In-document Element.querySelectorAll: Descendant combinator, matching element with class that is a descendant of an element with class: .descendant-div1 .descendant-div3 
+PASS In-document Element.querySelector: Descendant combinator, matching element with class that is a descendant of an element with class: .descendant-div1 .descendant-div3 
+PASS In-document Element.querySelectorAll: Descendant combinator, not matching element with id that is not a descendant of an element with id: #descendant-div1 #descendant-div4 
+PASS In-document Element.querySelector: Descendant combinator, not matching element with id that is not a descendant of an element with id: #descendant-div1 #descendant-div4 
+PASS In-document Element.querySelectorAll: Descendant combinator, whitespace characters: #descendant        
+#descendant-div2 
+PASS In-document Element.querySelector: Descendant combinator, whitespace characters: #descendant        
+#descendant-div2 
+PASS In-document Element.querySelectorAll: Child combinator, matching element that is a child of an element with id: #child&gt;div 
+PASS In-document Element.querySelector: Child combinator, matching element that is a child of an element with id: #child&gt;div 
+PASS In-document Element.querySelectorAll: Child combinator, matching element with id that is a child of an element: div&gt;#child-div1 
+PASS In-document Element.querySelector: Child combinator, matching element with id that is a child of an element: div&gt;#child-div1 
+PASS In-document Element.querySelectorAll: Child combinator, matching element with id that is a child of an element with id: #child&gt;#child-div1 
+PASS In-document Element.querySelector: Child combinator, matching element with id that is a child of an element with id: #child&gt;#child-div1 
+PASS In-document Element.querySelectorAll: Child combinator, matching element with id that is a child of an element with class: #child-div1&gt;.child-div2 
+PASS In-document Element.querySelector: Child combinator, matching element with id that is a child of an element with class: #child-div1&gt;.child-div2 
+PASS In-document Element.querySelectorAll: Child combinator, matching element with class that is a child of an element with class: .child-div1&gt;.child-div2 
+PASS In-document Element.querySelector: Child combinator, matching element with class that is a child of an element with class: .child-div1&gt;.child-div2 
+PASS In-document Element.querySelectorAll: Child combinator, not matching element with id that is not a child of an element with id: #child&gt;#child-div3 
+PASS In-document Element.querySelector: Child combinator, not matching element with id that is not a child of an element with id: #child&gt;#child-div3 
+PASS In-document Element.querySelectorAll: Child combinator, not matching element with id that is not a child of an element with class: #child-div1&gt;.child-div3 
+PASS In-document Element.querySelector: Child combinator, not matching element with id that is not a child of an element with class: #child-div1&gt;.child-div3 
+PASS In-document Element.querySelectorAll: Child combinator, not matching element with class that is not a child of an element with class: .child-div1&gt;.child-div3 
+PASS In-document Element.querySelector: Child combinator, not matching element with class that is not a child of an element with class: .child-div1&gt;.child-div3 
+PASS In-document Element.querySelectorAll: Child combinator, surrounded by whitespace: #child-div1        
+&gt;        
+#child-div2 
+PASS In-document Element.querySelector: Child combinator, surrounded by whitespace: #child-div1        
+&gt;        
+#child-div2 
+PASS In-document Element.querySelectorAll: Child combinator, whitespace after: #child-div1&gt;        
+#child-div2 
+PASS In-document Element.querySelector: Child combinator, whitespace after: #child-div1&gt;        
+#child-div2 
+PASS In-document Element.querySelectorAll: Child combinator, whitespace before: #child-div1        
+&gt;#child-div2 
+PASS In-document Element.querySelector: Child combinator, whitespace before: #child-div1        
+&gt;#child-div2 
+PASS In-document Element.querySelectorAll: Child combinator, no whitespace: #child-div1&gt;#child-div2 
+PASS In-document Element.querySelector: Child combinator, no whitespace: #child-div1&gt;#child-div2 
+PASS In-document Element.querySelectorAll: Adjacent sibling combinator, matching element that is an adjacent sibling of an element with id: #adjacent-div2+div 
+PASS In-document Element.querySelector: Adjacent sibling combinator, matching element that is an adjacent sibling of an element with id: #adjacent-div2+div 
+PASS In-document Element.querySelectorAll: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element: div+#adjacent-div4 
+PASS In-document Element.querySelector: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element: div+#adjacent-div4 
+PASS In-document Element.querySelectorAll: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element with id: #adjacent-div2+#adjacent-div4 
+PASS In-document Element.querySelector: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element with id: #adjacent-div2+#adjacent-div4 
+PASS In-document Element.querySelectorAll: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with id: #adjacent-div2+.adjacent-div4 
+PASS In-document Element.querySelector: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with id: #adjacent-div2+.adjacent-div4 
+PASS In-document Element.querySelectorAll: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with class: .adjacent-div2+.adjacent-div4 
+PASS In-document Element.querySelector: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with class: .adjacent-div2+.adjacent-div4 
+PASS In-document Element.querySelectorAll: Adjacent sibling combinator, matching p element that is an adjacent sibling of a div element: #adjacent div+p 
+PASS In-document Element.querySelector: Adjacent sibling combinator, matching p element that is an adjacent sibling of a div element: #adjacent div+p 
+PASS In-document Element.querySelectorAll: Adjacent sibling combinator, not matching element with id that is not an adjacent sibling of an element with id: #adjacent-div2+#adjacent-p2, #adjacent-div2+#adjacent-div1 
+PASS In-document Element.querySelector: Adjacent sibling combinator, not matching element with id that is not an adjacent sibling of an element with id: #adjacent-div2+#adjacent-p2, #adjacent-div2+#adjacent-div1 
+PASS In-document Element.querySelectorAll: Adjacent sibling combinator, surrounded by whitespace: #adjacent-p2        
++        
+#adjacent-p3 
+PASS In-document Element.querySelector: Adjacent sibling combinator, surrounded by whitespace: #adjacent-p2        
++        
+#adjacent-p3 
+PASS In-document Element.querySelectorAll: Adjacent sibling combinator, whitespace after: #adjacent-p2+        
+#adjacent-p3 
+PASS In-document Element.querySelector: Adjacent sibling combinator, whitespace after: #adjacent-p2+        
+#adjacent-p3 
+PASS In-document Element.querySelectorAll: Adjacent sibling combinator, whitespace before: #adjacent-p2        
++#adjacent-p3 
+PASS In-document Element.querySelector: Adjacent sibling combinator, whitespace before: #adjacent-p2        
++#adjacent-p3 
+PASS In-document Element.querySelectorAll: Adjacent sibling combinator, no whitespace: #adjacent-p2+#adjacent-p3 
+PASS In-document Element.querySelector: Adjacent sibling combinator, no whitespace: #adjacent-p2+#adjacent-p3 
+PASS In-document Element.querySelectorAll: General sibling combinator, matching element that is a sibling of an element with id: #sibling-div2~div 
+PASS In-document Element.querySelector: General sibling combinator, matching element that is a sibling of an element with id: #sibling-div2~div 
+PASS In-document Element.querySelectorAll: General sibling combinator, matching element with id that is a sibling of an element: div~#sibling-div4 
+PASS In-document Element.querySelector: General sibling combinator, matching element with id that is a sibling of an element: div~#sibling-div4 
+PASS In-document Element.querySelectorAll: General sibling combinator, matching element with id that is a sibling of an element with id: #sibling-div2~#sibling-div4 
+PASS In-document Element.querySelector: General sibling combinator, matching element with id that is a sibling of an element with id: #sibling-div2~#sibling-div4 
+PASS In-document Element.querySelectorAll: General sibling combinator, matching element with class that is a sibling of an element with id: #sibling-div2~.sibling-div 
+PASS In-document Element.querySelector: General sibling combinator, matching element with class that is a sibling of an element with id: #sibling-div2~.sibling-div 
+PASS In-document Element.querySelectorAll: General sibling combinator, matching p element that is a sibling of a div element: #sibling div~p 
+PASS In-document Element.querySelector: General sibling combinator, matching p element that is a sibling of a div element: #sibling div~p 
+PASS In-document Element.querySelectorAll: General sibling combinator, not matching element with id that is not a sibling after a p element: #sibling&gt;p~div 
+PASS In-document Element.querySelector: General sibling combinator, not matching element with id that is not a sibling after a p element: #sibling&gt;p~div 
+PASS In-document Element.querySelectorAll: General sibling combinator, not matching element with id that is not a sibling after an element with id: #sibling-div2~#sibling-div3, #sibling-div2~#sibling-div1 
+PASS In-document Element.querySelector: General sibling combinator, not matching element with id that is not a sibling after an element with id: #sibling-div2~#sibling-div3, #sibling-div2~#sibling-div1 
+PASS In-document Element.querySelectorAll: General sibling combinator, surrounded by whitespace: #sibling-p2        
+~        
+#sibling-p3 
+PASS In-document Element.querySelector: General sibling combinator, surrounded by whitespace: #sibling-p2        
+~        
+#sibling-p3 
+PASS In-document Element.querySelectorAll: General sibling combinator, whitespace after: #sibling-p2~        
+#sibling-p3 
+PASS In-document Element.querySelector: General sibling combinator, whitespace after: #sibling-p2~        
+#sibling-p3 
+PASS In-document Element.querySelectorAll: General sibling combinator, whitespace before: #sibling-p2        
+~#sibling-p3 
+PASS In-document Element.querySelector: General sibling combinator, whitespace before: #sibling-p2        
+~#sibling-p3 
+PASS In-document Element.querySelectorAll: General sibling combinator, no whitespace: #sibling-p2~#sibling-p3 
+PASS In-document Element.querySelector: General sibling combinator, no whitespace: #sibling-p2~#sibling-p3 
+PASS In-document Element.querySelectorAll: Syntax, group of selectors separator, surrounded by whitespace: #group em        

+,        

+#group strong 
+PASS In-document Element.querySelector: Syntax, group of selectors separator, surrounded by whitespace: #group em        

+,        

+#group strong 
+PASS In-document Element.querySelectorAll: Syntax, group of selectors separator, whitespace after: #group em,        
+#group strong 
+PASS In-document Element.querySelector: Syntax, group of selectors separator, whitespace after: #group em,        
+#group strong 
+PASS In-document Element.querySelectorAll: Syntax, group of selectors separator, whitespace before: #group em        
+,#group strong 
+PASS In-document Element.querySelector: Syntax, group of selectors separator, whitespace before: #group em        
+,#group strong 
+PASS In-document Element.querySelectorAll: Syntax, group of selectors separator, no whitespace: #group em,#group strong 
+PASS In-document Element.querySelector: Syntax, group of selectors separator, no whitespace: #group em,#group strong 
+
</ins></span></pre></div>
<a id="branchessafari602branchLayoutTestsplatformmacimportedw3cwebplatformtestshtmldominterfacesexpectedtxt"></a>
<div class="addfile"><h4>Added: branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt (0 => 204212)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt                                (rev 0)
+++ branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt        2016-08-06 01:19:14 UTC (rev 204212)
</span><span class="lines">@@ -0,0 +1,6353 @@
</span><ins>+CONSOLE MESSAGE: line 236: callback not yet supported
+CONSOLE MESSAGE: line 236: callback not yet supported
+CONSOLE MESSAGE: line 236: callback not yet supported
+CONSOLE MESSAGE: line 236: callback not yet supported
+CONSOLE MESSAGE: line 236: callback not yet supported
+CONSOLE MESSAGE: line 236: callback not yet supported
+CONSOLE MESSAGE: line 236: callback not yet supported
+HTML IDL tests
+
+
+PASS NodeList must be primary interface of document.getElementsByName(&quot;name&quot;) 
+PASS Stringification of document.getElementsByName(&quot;name&quot;) 
+PASS NodeList interface: document.getElementsByName(&quot;name&quot;) must inherit property &quot;item&quot; with the proper type (0) 
+PASS NodeList interface: calling item(unsigned long) on document.getElementsByName(&quot;name&quot;) with too few arguments must throw TypeError 
+PASS NodeList interface: document.getElementsByName(&quot;name&quot;) must inherit property &quot;length&quot; with the proper type (1) 
+PASS Document interface: attribute domain 
+PASS Document interface: attribute referrer 
+PASS Document interface: attribute cookie 
+PASS Document interface: attribute lastModified 
+PASS Document interface: attribute readyState 
+PASS Document interface: attribute title 
+FAIL Document interface: attribute dir assert_true: The prototype object must have a property &quot;dir&quot; expected true got false
+PASS Document interface: attribute body 
+PASS Document interface: attribute head 
+PASS Document interface: attribute images 
+FAIL Document interface: attribute embeds assert_true: The prototype object must have a property &quot;embeds&quot; expected true got false
+FAIL Document interface: attribute plugins assert_true: The prototype object must have a property &quot;plugins&quot; expected true got false
+PASS Document interface: attribute links 
+PASS Document interface: attribute forms 
+FAIL Document interface: attribute scripts assert_true: The prototype object must have a property &quot;scripts&quot; expected true got false
+FAIL Document interface: operation getElementsByName(DOMString) assert_equals: property has wrong .length expected 1 but got 0
+FAIL Document interface: attribute cssElementMap assert_true: The prototype object must have a property &quot;cssElementMap&quot; expected true got false
+PASS Document interface: attribute currentScript 
+FAIL Document interface: operation open(DOMString,DOMString) assert_own_property: interface prototype object missing non-static operation expected property &quot;open&quot; missing
+FAIL Document interface: operation open(DOMString,DOMString,DOMString,boolean) assert_own_property: interface prototype object missing non-static operation expected property &quot;open&quot; missing
+FAIL Document interface: operation close() assert_own_property: interface prototype object missing non-static operation expected property &quot;close&quot; missing
+FAIL Document interface: operation write(DOMString) assert_own_property: interface prototype object missing non-static operation expected property &quot;write&quot; missing
+FAIL Document interface: operation writeln(DOMString) assert_own_property: interface prototype object missing non-static operation expected property &quot;writeln&quot; missing
+PASS Document interface: attribute defaultView 
+PASS Document interface: attribute activeElement 
+PASS Document interface: operation hasFocus() 
+FAIL Document interface: attribute designMode assert_true: The prototype object must have a property &quot;designMode&quot; expected true got false
+FAIL Document interface: operation execCommand(DOMString,boolean,DOMString) assert_equals: property has wrong .length expected 1 but got 0
+FAIL Document interface: operation queryCommandEnabled(DOMString) assert_equals: property has wrong .length expected 1 but got 0
+FAIL Document interface: operation queryCommandIndeterm(DOMString) assert_equals: property has wrong .length expected 1 but got 0
+FAIL Document interface: operation queryCommandState(DOMString) assert_equals: property has wrong .length expected 1 but got 0
+FAIL Document interface: operation queryCommandSupported(DOMString) assert_equals: property has wrong .length expected 1 but got 0
+FAIL Document interface: operation queryCommandValue(DOMString) assert_equals: property has wrong .length expected 1 but got 0
+FAIL Document interface: attribute commands assert_true: The prototype object must have a property &quot;commands&quot; expected true got false
+PASS Document interface: attribute onreadystatechange 
+FAIL Document interface: attribute fgColor assert_true: The prototype object must have a property &quot;fgColor&quot; expected true got false
+FAIL Document interface: attribute linkColor assert_true: The prototype object must have a property &quot;linkColor&quot; expected true got false
+FAIL Document interface: attribute vlinkColor assert_true: The prototype object must have a property &quot;vlinkColor&quot; expected true got false
+FAIL Document interface: attribute alinkColor assert_true: The prototype object must have a property &quot;alinkColor&quot; expected true got false
+FAIL Document interface: attribute bgColor assert_true: The prototype object must have a property &quot;bgColor&quot; expected true got false
+PASS Document interface: attribute anchors 
+PASS Document interface: attribute applets 
+FAIL Document interface: operation clear() assert_own_property: interface prototype object missing non-static operation expected property &quot;clear&quot; missing
+FAIL Document interface: operation captureEvents() assert_own_property: interface prototype object missing non-static operation expected property &quot;captureEvents&quot; missing
+FAIL Document interface: operation releaseEvents() assert_own_property: interface prototype object missing non-static operation expected property &quot;releaseEvents&quot; missing
+FAIL Document interface: attribute all assert_true: The prototype object must have a property &quot;all&quot; expected true got false
+PASS Document interface: attribute onabort 
+FAIL Document interface: attribute onautocomplete assert_true: The prototype object must have a property &quot;onautocomplete&quot; expected true got false
+FAIL Document interface: attribute onautocompleteerror assert_true: The prototype object must have a property &quot;onautocompleteerror&quot; expected true got false
+PASS Document interface: attribute onblur 
+FAIL Document interface: attribute oncancel assert_true: The prototype object must have a property &quot;oncancel&quot; expected true got false
+PASS Document interface: attribute oncanplay 
+PASS Document interface: attribute oncanplaythrough 
+PASS Document interface: attribute onchange 
+PASS Document interface: attribute onclick 
+FAIL Document interface: attribute onclose assert_true: The prototype object must have a property &quot;onclose&quot; expected true got false
+PASS Document interface: attribute oncontextmenu 
+FAIL Document interface: attribute oncuechange assert_true: The prototype object must have a property &quot;oncuechange&quot; expected true got false
+PASS Document interface: attribute ondblclick 
+PASS Document interface: attribute ondrag 
+PASS Document interface: attribute ondragend 
+PASS Document interface: attribute ondragenter 
+FAIL Document interface: attribute ondragexit assert_true: The prototype object must have a property &quot;ondragexit&quot; expected true got false
+PASS Document interface: attribute ondragleave 
+PASS Document interface: attribute ondragover 
+PASS Document interface: attribute ondragstart 
+PASS Document interface: attribute ondrop 
+PASS Document interface: attribute ondurationchange 
+PASS Document interface: attribute onemptied 
+PASS Document interface: attribute onended 
+PASS Document interface: attribute onerror 
+PASS Document interface: attribute onfocus 
+PASS Document interface: attribute oninput 
+PASS Document interface: attribute oninvalid 
+PASS Document interface: attribute onkeydown 
+PASS Document interface: attribute onkeypress 
+PASS Document interface: attribute onkeyup 
+PASS Document interface: attribute onload 
+PASS Document interface: attribute onloadeddata 
+PASS Document interface: attribute onloadedmetadata 
+PASS Document interface: attribute onloadstart 
+PASS Document interface: attribute onmousedown 
+PASS Document interface: attribute onmouseenter 
+PASS Document interface: attribute onmouseleave 
+PASS Document interface: attribute onmousemove 
+PASS Document interface: attribute onmouseout 
+PASS Document interface: attribute onmouseover 
+PASS Document interface: attribute onmouseup 
+PASS Document interface: attribute onmousewheel 
+PASS Document interface: attribute onpause 
+PASS Document interface: attribute onplay 
+PASS Document interface: attribute onplaying 
+PASS Document interface: attribute onprogress 
+PASS Document interface: attribute onratechange 
+PASS Document interface: attribute onreset 
+PASS Document interface: attribute onresize 
+PASS Document interface: attribute onscroll 
+PASS Document interface: attribute onseeked 
+PASS Document interface: attribute onseeking 
+PASS Document interface: attribute onselect 
+FAIL Document interface: attribute onshow assert_true: The prototype object must have a property &quot;onshow&quot; expected true got false
+FAIL Document interface: attribute onsort assert_true: The prototype object must have a property &quot;onsort&quot; expected true got false
+PASS Document interface: attribute onstalled 
+PASS Document interface: attribute onsubmit 
+PASS Document interface: attribute onsuspend 
+PASS Document interface: attribute ontimeupdate 
+FAIL Document interface: attribute ontoggle assert_true: The prototype object must have a property &quot;ontoggle&quot; expected true got false
+PASS Document interface: attribute onvolumechange 
+PASS Document interface: attribute onwaiting 
+FAIL Stringification of iframe.contentDocument assert_equals: class string of iframe.contentDocument expected &quot;[object Document]&quot; but got &quot;[object HTMLDocument]&quot;
+PASS Document interface: iframe.contentDocument must inherit property &quot;implementation&quot; with the proper type (0) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;URL&quot; with the proper type (1) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;documentURI&quot; with the proper type (2) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;origin&quot; with the proper type (3) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;compatMode&quot; with the proper type (4) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;characterSet&quot; with the proper type (5) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;charset&quot; with the proper type (6) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;inputEncoding&quot; with the proper type (7) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;contentType&quot; with the proper type (8) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;doctype&quot; with the proper type (9) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;documentElement&quot; with the proper type (10) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;getElementsByTagName&quot; with the proper type (11) 
+FAIL Document interface: calling getElementsByTagName(DOMString) on iframe.contentDocument with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: iframe.contentDocument must inherit property &quot;getElementsByTagNameNS&quot; with the proper type (12) 
+FAIL Document interface: calling getElementsByTagNameNS(DOMString,DOMString) on iframe.contentDocument with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: iframe.contentDocument must inherit property &quot;getElementsByClassName&quot; with the proper type (13) 
+FAIL Document interface: calling getElementsByClassName(DOMString) on iframe.contentDocument with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: iframe.contentDocument must inherit property &quot;createElement&quot; with the proper type (14) 
+PASS Document interface: calling createElement(DOMString) on iframe.contentDocument with too few arguments must throw TypeError 
+PASS Document interface: iframe.contentDocument must inherit property &quot;createElementNS&quot; with the proper type (15) 
+FAIL Document interface: calling createElementNS(DOMString,DOMString) on iframe.contentDocument with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: iframe.contentDocument must inherit property &quot;createDocumentFragment&quot; with the proper type (16) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;createTextNode&quot; with the proper type (17) 
+FAIL Document interface: calling createTextNode(DOMString) on iframe.contentDocument with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: iframe.contentDocument must inherit property &quot;createComment&quot; with the proper type (18) 
+FAIL Document interface: calling createComment(DOMString) on iframe.contentDocument with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: iframe.contentDocument must inherit property &quot;createProcessingInstruction&quot; with the proper type (19) 
+FAIL Document interface: calling createProcessingInstruction(DOMString,DOMString) on iframe.contentDocument with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: iframe.contentDocument must inherit property &quot;importNode&quot; with the proper type (20) 
+PASS Document interface: calling importNode(Node,boolean) on iframe.contentDocument with too few arguments must throw TypeError 
+PASS Document interface: iframe.contentDocument must inherit property &quot;adoptNode&quot; with the proper type (21) 
+PASS Document interface: calling adoptNode(Node) on iframe.contentDocument with too few arguments must throw TypeError 
+PASS Document interface: iframe.contentDocument must inherit property &quot;createAttribute&quot; with the proper type (22) 
+FAIL Document interface: calling createAttribute(DOMString) on iframe.contentDocument with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: iframe.contentDocument must inherit property &quot;createAttributeNS&quot; with the proper type (23) 
+FAIL Document interface: calling createAttributeNS(DOMString,DOMString) on iframe.contentDocument with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: iframe.contentDocument must inherit property &quot;createEvent&quot; with the proper type (24) 
+FAIL Document interface: calling createEvent(DOMString) on iframe.contentDocument with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; threw object &quot;NotSupportedError (DOM Exception 9): The operation is not...&quot; (&quot;NotSupportedError&quot;) expected object &quot;TypeError&quot; (&quot;TypeError&quot;)
+PASS Document interface: iframe.contentDocument must inherit property &quot;createRange&quot; with the proper type (25) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;createNodeIterator&quot; with the proper type (26) 
+PASS Document interface: calling createNodeIterator(Node,unsigned long,NodeFilter) on iframe.contentDocument with too few arguments must throw TypeError 
+PASS Document interface: iframe.contentDocument must inherit property &quot;createTreeWalker&quot; with the proper type (27) 
+PASS Document interface: calling createTreeWalker(Node,unsigned long,NodeFilter) on iframe.contentDocument with too few arguments must throw TypeError 
+PASS Document interface: iframe.contentDocument must inherit property &quot;styleSheets&quot; with the proper type (28) 
+FAIL Document interface: iframe.contentDocument must inherit property &quot;selectedStyleSheetSet&quot; with the proper type (29) assert_inherits: property &quot;selectedStyleSheetSet&quot; not found in prototype chain
+FAIL Document interface: iframe.contentDocument must inherit property &quot;lastStyleSheetSet&quot; with the proper type (30) assert_inherits: property &quot;lastStyleSheetSet&quot; not found in prototype chain
+FAIL Document interface: iframe.contentDocument must inherit property &quot;preferredStyleSheetSet&quot; with the proper type (31) assert_inherits: property &quot;preferredStyleSheetSet&quot; not found in prototype chain
+FAIL Document interface: iframe.contentDocument must inherit property &quot;styleSheetSets&quot; with the proper type (32) assert_inherits: property &quot;styleSheetSets&quot; not found in prototype chain
+FAIL Document interface: iframe.contentDocument must inherit property &quot;enableStyleSheetsForSet&quot; with the proper type (33) assert_inherits: property &quot;enableStyleSheetsForSet&quot; not found in prototype chain
+FAIL Document interface: calling enableStyleSheetsForSet(DOMString) on iframe.contentDocument with too few arguments must throw TypeError assert_inherits: property &quot;enableStyleSheetsForSet&quot; not found in prototype chain
+PASS Document interface: iframe.contentDocument must have own property &quot;location&quot; 
+PASS Document interface: iframe.contentDocument must inherit property &quot;domain&quot; with the proper type (35) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;referrer&quot; with the proper type (36) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;cookie&quot; with the proper type (37) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;lastModified&quot; with the proper type (38) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;readyState&quot; with the proper type (39) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;title&quot; with the proper type (41) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;dir&quot; with the proper type (42) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;body&quot; with the proper type (43) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;head&quot; with the proper type (44) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;images&quot; with the proper type (45) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;embeds&quot; with the proper type (46) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;plugins&quot; with the proper type (47) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;links&quot; with the proper type (48) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;forms&quot; with the proper type (49) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;scripts&quot; with the proper type (50) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;getElementsByName&quot; with the proper type (51) 
+FAIL Document interface: calling getElementsByName(DOMString) on iframe.contentDocument with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+FAIL Document interface: iframe.contentDocument must inherit property &quot;cssElementMap&quot; with the proper type (52) assert_inherits: property &quot;cssElementMap&quot; not found in prototype chain
+PASS Document interface: iframe.contentDocument must inherit property &quot;currentScript&quot; with the proper type (53) 
+FAIL Document interface: iframe.contentDocument must inherit property &quot;open&quot; with the proper type (54) assert_inherits: property &quot;open&quot; found on object expected in prototype chain
+FAIL Document interface: calling open(DOMString,DOMString) on iframe.contentDocument with too few arguments must throw TypeError assert_inherits: property &quot;open&quot; found on object expected in prototype chain
+FAIL Document interface: iframe.contentDocument must inherit property &quot;open&quot; with the proper type (55) assert_inherits: property &quot;open&quot; found on object expected in prototype chain
+FAIL Document interface: calling open(DOMString,DOMString,DOMString,boolean) on iframe.contentDocument with too few arguments must throw TypeError assert_inherits: property &quot;open&quot; found on object expected in prototype chain
+PASS Document interface: iframe.contentDocument must inherit property &quot;close&quot; with the proper type (56) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;write&quot; with the proper type (57) 
+PASS Document interface: calling write(DOMString) on iframe.contentDocument with too few arguments must throw TypeError 
+PASS Document interface: iframe.contentDocument must inherit property &quot;writeln&quot; with the proper type (58) 
+PASS Document interface: calling writeln(DOMString) on iframe.contentDocument with too few arguments must throw TypeError 
+PASS Document interface: iframe.contentDocument must inherit property &quot;defaultView&quot; with the proper type (59) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;activeElement&quot; with the proper type (60) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;hasFocus&quot; with the proper type (61) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;designMode&quot; with the proper type (62) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;execCommand&quot; with the proper type (63) 
+FAIL Document interface: calling execCommand(DOMString,boolean,DOMString) on iframe.contentDocument with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: iframe.contentDocument must inherit property &quot;queryCommandEnabled&quot; with the proper type (64) 
+FAIL Document interface: calling queryCommandEnabled(DOMString) on iframe.contentDocument with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: iframe.contentDocument must inherit property &quot;queryCommandIndeterm&quot; with the proper type (65) 
+FAIL Document interface: calling queryCommandIndeterm(DOMString) on iframe.contentDocument with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: iframe.contentDocument must inherit property &quot;queryCommandState&quot; with the proper type (66) 
+FAIL Document interface: calling queryCommandState(DOMString) on iframe.contentDocument with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: iframe.contentDocument must inherit property &quot;queryCommandSupported&quot; with the proper type (67) 
+FAIL Document interface: calling queryCommandSupported(DOMString) on iframe.contentDocument with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: iframe.contentDocument must inherit property &quot;queryCommandValue&quot; with the proper type (68) 
+FAIL Document interface: calling queryCommandValue(DOMString) on iframe.contentDocument with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+FAIL Document interface: iframe.contentDocument must inherit property &quot;commands&quot; with the proper type (69) assert_inherits: property &quot;commands&quot; not found in prototype chain
+PASS Document interface: iframe.contentDocument must inherit property &quot;onreadystatechange&quot; with the proper type (70) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;fgColor&quot; with the proper type (71) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;linkColor&quot; with the proper type (72) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;vlinkColor&quot; with the proper type (73) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;alinkColor&quot; with the proper type (74) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;bgColor&quot; with the proper type (75) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;anchors&quot; with the proper type (76) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;applets&quot; with the proper type (77) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;clear&quot; with the proper type (78) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;captureEvents&quot; with the proper type (79) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;releaseEvents&quot; with the proper type (80) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;all&quot; with the proper type (81) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;getElementById&quot; with the proper type (82) 
+FAIL Document interface: calling getElementById(DOMString) on iframe.contentDocument with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: iframe.contentDocument must inherit property &quot;children&quot; with the proper type (83) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;firstElementChild&quot; with the proper type (84) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;lastElementChild&quot; with the proper type (85) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;childElementCount&quot; with the proper type (86) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;prepend&quot; with the proper type (87) 
+PASS Document interface: calling prepend([object Object],[object Object]) on iframe.contentDocument with too few arguments must throw TypeError 
+PASS Document interface: iframe.contentDocument must inherit property &quot;append&quot; with the proper type (88) 
+PASS Document interface: calling append([object Object],[object Object]) on iframe.contentDocument with too few arguments must throw TypeError 
+FAIL Document interface: iframe.contentDocument must inherit property &quot;query&quot; with the proper type (89) assert_inherits: property &quot;query&quot; not found in prototype chain
+FAIL Document interface: calling query(DOMString) on iframe.contentDocument with too few arguments must throw TypeError assert_inherits: property &quot;query&quot; not found in prototype chain
+FAIL Document interface: iframe.contentDocument must inherit property &quot;queryAll&quot; with the proper type (90) assert_inherits: property &quot;queryAll&quot; not found in prototype chain
+FAIL Document interface: calling queryAll(DOMString) on iframe.contentDocument with too few arguments must throw TypeError assert_inherits: property &quot;queryAll&quot; not found in prototype chain
+PASS Document interface: iframe.contentDocument must inherit property &quot;querySelector&quot; with the proper type (91) 
+PASS Document interface: calling querySelector(DOMString) on iframe.contentDocument with too few arguments must throw TypeError 
+PASS Document interface: iframe.contentDocument must inherit property &quot;querySelectorAll&quot; with the proper type (92) 
+PASS Document interface: calling querySelectorAll(DOMString) on iframe.contentDocument with too few arguments must throw TypeError 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onabort&quot; with the proper type (93) 
+FAIL Document interface: iframe.contentDocument must inherit property &quot;onautocomplete&quot; with the proper type (94) assert_inherits: property &quot;onautocomplete&quot; not found in prototype chain
+FAIL Document interface: iframe.contentDocument must inherit property &quot;onautocompleteerror&quot; with the proper type (95) assert_inherits: property &quot;onautocompleteerror&quot; not found in prototype chain
+PASS Document interface: iframe.contentDocument must inherit property &quot;onblur&quot; with the proper type (96) 
+FAIL Document interface: iframe.contentDocument must inherit property &quot;oncancel&quot; with the proper type (97) assert_inherits: property &quot;oncancel&quot; not found in prototype chain
+PASS Document interface: iframe.contentDocument must inherit property &quot;oncanplay&quot; with the proper type (98) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;oncanplaythrough&quot; with the proper type (99) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onchange&quot; with the proper type (100) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onclick&quot; with the proper type (101) 
+FAIL Document interface: iframe.contentDocument must inherit property &quot;onclose&quot; with the proper type (102) assert_inherits: property &quot;onclose&quot; not found in prototype chain
+PASS Document interface: iframe.contentDocument must inherit property &quot;oncontextmenu&quot; with the proper type (103) 
+FAIL Document interface: iframe.contentDocument must inherit property &quot;oncuechange&quot; with the proper type (104) assert_inherits: property &quot;oncuechange&quot; not found in prototype chain
+PASS Document interface: iframe.contentDocument must inherit property &quot;ondblclick&quot; with the proper type (105) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;ondrag&quot; with the proper type (106) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;ondragend&quot; with the proper type (107) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;ondragenter&quot; with the proper type (108) 
+FAIL Document interface: iframe.contentDocument must inherit property &quot;ondragexit&quot; with the proper type (109) assert_inherits: property &quot;ondragexit&quot; not found in prototype chain
+PASS Document interface: iframe.contentDocument must inherit property &quot;ondragleave&quot; with the proper type (110) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;ondragover&quot; with the proper type (111) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;ondragstart&quot; with the proper type (112) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;ondrop&quot; with the proper type (113) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;ondurationchange&quot; with the proper type (114) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onemptied&quot; with the proper type (115) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onended&quot; with the proper type (116) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onerror&quot; with the proper type (117) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onfocus&quot; with the proper type (118) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;oninput&quot; with the proper type (119) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;oninvalid&quot; with the proper type (120) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onkeydown&quot; with the proper type (121) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onkeypress&quot; with the proper type (122) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onkeyup&quot; with the proper type (123) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onload&quot; with the proper type (124) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onloadeddata&quot; with the proper type (125) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onloadedmetadata&quot; with the proper type (126) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onloadstart&quot; with the proper type (127) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onmousedown&quot; with the proper type (128) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onmouseenter&quot; with the proper type (129) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onmouseleave&quot; with the proper type (130) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onmousemove&quot; with the proper type (131) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onmouseout&quot; with the proper type (132) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onmouseover&quot; with the proper type (133) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onmouseup&quot; with the proper type (134) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onmousewheel&quot; with the proper type (135) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onpause&quot; with the proper type (136) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onplay&quot; with the proper type (137) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onplaying&quot; with the proper type (138) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onprogress&quot; with the proper type (139) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onratechange&quot; with the proper type (140) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onreset&quot; with the proper type (141) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onresize&quot; with the proper type (142) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onscroll&quot; with the proper type (143) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onseeked&quot; with the proper type (144) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onseeking&quot; with the proper type (145) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onselect&quot; with the proper type (146) 
+FAIL Document interface: iframe.contentDocument must inherit property &quot;onshow&quot; with the proper type (147) assert_inherits: property &quot;onshow&quot; not found in prototype chain
+FAIL Document interface: iframe.contentDocument must inherit property &quot;onsort&quot; with the proper type (148) assert_inherits: property &quot;onsort&quot; not found in prototype chain
+PASS Document interface: iframe.contentDocument must inherit property &quot;onstalled&quot; with the proper type (149) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onsubmit&quot; with the proper type (150) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onsuspend&quot; with the proper type (151) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;ontimeupdate&quot; with the proper type (152) 
+FAIL Document interface: iframe.contentDocument must inherit property &quot;ontoggle&quot; with the proper type (153) assert_inherits: property &quot;ontoggle&quot; not found in prototype chain
+PASS Document interface: iframe.contentDocument must inherit property &quot;onvolumechange&quot; with the proper type (154) 
+PASS Document interface: iframe.contentDocument must inherit property &quot;onwaiting&quot; with the proper type (155) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;ELEMENT_NODE&quot; with the proper type (0) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;ATTRIBUTE_NODE&quot; with the proper type (1) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;TEXT_NODE&quot; with the proper type (2) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;CDATA_SECTION_NODE&quot; with the proper type (3) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;ENTITY_REFERENCE_NODE&quot; with the proper type (4) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;ENTITY_NODE&quot; with the proper type (5) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;PROCESSING_INSTRUCTION_NODE&quot; with the proper type (6) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;COMMENT_NODE&quot; with the proper type (7) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;DOCUMENT_NODE&quot; with the proper type (8) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;DOCUMENT_TYPE_NODE&quot; with the proper type (9) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;DOCUMENT_FRAGMENT_NODE&quot; with the proper type (10) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;NOTATION_NODE&quot; with the proper type (11) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;nodeType&quot; with the proper type (12) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;nodeName&quot; with the proper type (13) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;baseURI&quot; with the proper type (14) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;ownerDocument&quot; with the proper type (15) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;parentNode&quot; with the proper type (16) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;parentElement&quot; with the proper type (17) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;hasChildNodes&quot; with the proper type (18) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;childNodes&quot; with the proper type (19) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;firstChild&quot; with the proper type (20) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;lastChild&quot; with the proper type (21) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;previousSibling&quot; with the proper type (22) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;nextSibling&quot; with the proper type (23) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;nodeValue&quot; with the proper type (24) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;textContent&quot; with the proper type (25) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;normalize&quot; with the proper type (26) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;cloneNode&quot; with the proper type (27) 
+PASS Node interface: calling cloneNode(boolean) on iframe.contentDocument with too few arguments must throw TypeError 
+PASS Node interface: iframe.contentDocument must inherit property &quot;isEqualNode&quot; with the proper type (28) 
+FAIL Node interface: calling isEqualNode(Node) on iframe.contentDocument with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Node interface: iframe.contentDocument must inherit property &quot;DOCUMENT_POSITION_DISCONNECTED&quot; with the proper type (29) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;DOCUMENT_POSITION_PRECEDING&quot; with the proper type (30) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;DOCUMENT_POSITION_FOLLOWING&quot; with the proper type (31) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;DOCUMENT_POSITION_CONTAINS&quot; with the proper type (32) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;DOCUMENT_POSITION_CONTAINED_BY&quot; with the proper type (33) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC&quot; with the proper type (34) 
+PASS Node interface: iframe.contentDocument must inherit property &quot;compareDocumentPosition&quot; with the proper type (35) 
+FAIL Node interface: calling compareDocumentPosition(Node) on iframe.contentDocument with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Node interface: iframe.contentDocument must inherit property &quot;contains&quot; with the proper type (36) 
+FAIL Node interface: calling contains(Node) on iframe.contentDocument with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Node interface: iframe.contentDocument must inherit property &quot;lookupPrefix&quot; with the proper type (37) 
+FAIL Node interface: calling lookupPrefix(DOMString) on iframe.contentDocument with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Node interface: iframe.contentDocument must inherit property &quot;lookupNamespaceURI&quot; with the proper type (38) 
+FAIL Node interface: calling lookupNamespaceURI(DOMString) on iframe.contentDocument with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Node interface: iframe.contentDocument must inherit property &quot;isDefaultNamespace&quot; with the proper type (39) 
+FAIL Node interface: calling isDefaultNamespace(DOMString) on iframe.contentDocument with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Node interface: iframe.contentDocument must inherit property &quot;insertBefore&quot; with the proper type (40) 
+FAIL Node interface: calling insertBefore(Node,Node) on iframe.contentDocument with too few arguments must throw TypeError assert_throws: Called with 1 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; threw object &quot;HierarchyRequestError (DOM Exception 3): The operation wo...&quot; (&quot;HierarchyRequestError&quot;) expected object &quot;TypeError&quot; (&quot;TypeError&quot;)
+PASS Node interface: iframe.contentDocument must inherit property &quot;appendChild&quot; with the proper type (41) 
+PASS Node interface: calling appendChild(Node) on iframe.contentDocument with too few arguments must throw TypeError 
+PASS Node interface: iframe.contentDocument must inherit property &quot;replaceChild&quot; with the proper type (42) 
+PASS Node interface: calling replaceChild(Node,Node) on iframe.contentDocument with too few arguments must throw TypeError 
+PASS Node interface: iframe.contentDocument must inherit property &quot;removeChild&quot; with the proper type (43) 
+PASS Node interface: calling removeChild(Node) on iframe.contentDocument with too few arguments must throw TypeError 
+PASS EventTarget interface: iframe.contentDocument must inherit property &quot;addEventListener&quot; with the proper type (0) 
+FAIL EventTarget interface: calling addEventListener(DOMString,EventListener,boolean) on iframe.contentDocument with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS EventTarget interface: iframe.contentDocument must inherit property &quot;removeEventListener&quot; with the proper type (1) 
+FAIL EventTarget interface: calling removeEventListener(DOMString,EventListener,boolean) on iframe.contentDocument with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS EventTarget interface: iframe.contentDocument must inherit property &quot;dispatchEvent&quot; with the proper type (2) 
+PASS EventTarget interface: calling dispatchEvent(Event) on iframe.contentDocument with too few arguments must throw TypeError 
+PASS Document must be primary interface of new Document() 
+PASS Stringification of new Document() 
+PASS Document interface: new Document() must inherit property &quot;implementation&quot; with the proper type (0) 
+PASS Document interface: new Document() must inherit property &quot;URL&quot; with the proper type (1) 
+PASS Document interface: new Document() must inherit property &quot;documentURI&quot; with the proper type (2) 
+PASS Document interface: new Document() must inherit property &quot;origin&quot; with the proper type (3) 
+PASS Document interface: new Document() must inherit property &quot;compatMode&quot; with the proper type (4) 
+PASS Document interface: new Document() must inherit property &quot;characterSet&quot; with the proper type (5) 
+PASS Document interface: new Document() must inherit property &quot;charset&quot; with the proper type (6) 
+PASS Document interface: new Document() must inherit property &quot;inputEncoding&quot; with the proper type (7) 
+PASS Document interface: new Document() must inherit property &quot;contentType&quot; with the proper type (8) 
+PASS Document interface: new Document() must inherit property &quot;doctype&quot; with the proper type (9) 
+PASS Document interface: new Document() must inherit property &quot;documentElement&quot; with the proper type (10) 
+PASS Document interface: new Document() must inherit property &quot;getElementsByTagName&quot; with the proper type (11) 
+FAIL Document interface: calling getElementsByTagName(DOMString) on new Document() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: new Document() must inherit property &quot;getElementsByTagNameNS&quot; with the proper type (12) 
+FAIL Document interface: calling getElementsByTagNameNS(DOMString,DOMString) on new Document() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: new Document() must inherit property &quot;getElementsByClassName&quot; with the proper type (13) 
+FAIL Document interface: calling getElementsByClassName(DOMString) on new Document() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: new Document() must inherit property &quot;createElement&quot; with the proper type (14) 
+PASS Document interface: calling createElement(DOMString) on new Document() with too few arguments must throw TypeError 
+PASS Document interface: new Document() must inherit property &quot;createElementNS&quot; with the proper type (15) 
+FAIL Document interface: calling createElementNS(DOMString,DOMString) on new Document() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: new Document() must inherit property &quot;createDocumentFragment&quot; with the proper type (16) 
+PASS Document interface: new Document() must inherit property &quot;createTextNode&quot; with the proper type (17) 
+FAIL Document interface: calling createTextNode(DOMString) on new Document() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: new Document() must inherit property &quot;createComment&quot; with the proper type (18) 
+FAIL Document interface: calling createComment(DOMString) on new Document() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: new Document() must inherit property &quot;createProcessingInstruction&quot; with the proper type (19) 
+FAIL Document interface: calling createProcessingInstruction(DOMString,DOMString) on new Document() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: new Document() must inherit property &quot;importNode&quot; with the proper type (20) 
+PASS Document interface: calling importNode(Node,boolean) on new Document() with too few arguments must throw TypeError 
+PASS Document interface: new Document() must inherit property &quot;adoptNode&quot; with the proper type (21) 
+PASS Document interface: calling adoptNode(Node) on new Document() with too few arguments must throw TypeError 
+PASS Document interface: new Document() must inherit property &quot;createAttribute&quot; with the proper type (22) 
+FAIL Document interface: calling createAttribute(DOMString) on new Document() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: new Document() must inherit property &quot;createAttributeNS&quot; with the proper type (23) 
+FAIL Document interface: calling createAttributeNS(DOMString,DOMString) on new Document() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: new Document() must inherit property &quot;createEvent&quot; with the proper type (24) 
+FAIL Document interface: calling createEvent(DOMString) on new Document() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; threw object &quot;NotSupportedError (DOM Exception 9): The operation is not...&quot; (&quot;NotSupportedError&quot;) expected object &quot;TypeError&quot; (&quot;TypeError&quot;)
+PASS Document interface: new Document() must inherit property &quot;createRange&quot; with the proper type (25) 
+PASS Document interface: new Document() must inherit property &quot;createNodeIterator&quot; with the proper type (26) 
+PASS Document interface: calling createNodeIterator(Node,unsigned long,NodeFilter) on new Document() with too few arguments must throw TypeError 
+PASS Document interface: new Document() must inherit property &quot;createTreeWalker&quot; with the proper type (27) 
+PASS Document interface: calling createTreeWalker(Node,unsigned long,NodeFilter) on new Document() with too few arguments must throw TypeError 
+PASS Document interface: new Document() must inherit property &quot;styleSheets&quot; with the proper type (28) 
+FAIL Document interface: new Document() must inherit property &quot;selectedStyleSheetSet&quot; with the proper type (29) assert_inherits: property &quot;selectedStyleSheetSet&quot; not found in prototype chain
+FAIL Document interface: new Document() must inherit property &quot;lastStyleSheetSet&quot; with the proper type (30) assert_inherits: property &quot;lastStyleSheetSet&quot; not found in prototype chain
+FAIL Document interface: new Document() must inherit property &quot;preferredStyleSheetSet&quot; with the proper type (31) assert_inherits: property &quot;preferredStyleSheetSet&quot; not found in prototype chain
+FAIL Document interface: new Document() must inherit property &quot;styleSheetSets&quot; with the proper type (32) assert_inherits: property &quot;styleSheetSets&quot; not found in prototype chain
+FAIL Document interface: new Document() must inherit property &quot;enableStyleSheetsForSet&quot; with the proper type (33) assert_inherits: property &quot;enableStyleSheetsForSet&quot; not found in prototype chain
+FAIL Document interface: calling enableStyleSheetsForSet(DOMString) on new Document() with too few arguments must throw TypeError assert_inherits: property &quot;enableStyleSheetsForSet&quot; not found in prototype chain
+PASS Document interface: new Document() must have own property &quot;location&quot; 
+PASS Document interface: new Document() must inherit property &quot;domain&quot; with the proper type (35) 
+PASS Document interface: new Document() must inherit property &quot;referrer&quot; with the proper type (36) 
+PASS Document interface: new Document() must inherit property &quot;cookie&quot; with the proper type (37) 
+PASS Document interface: new Document() must inherit property &quot;lastModified&quot; with the proper type (38) 
+PASS Document interface: new Document() must inherit property &quot;readyState&quot; with the proper type (39) 
+PASS Document interface: new Document() must inherit property &quot;title&quot; with the proper type (41) 
+FAIL Document interface: new Document() must inherit property &quot;dir&quot; with the proper type (42) assert_inherits: property &quot;dir&quot; not found in prototype chain
+PASS Document interface: new Document() must inherit property &quot;body&quot; with the proper type (43) 
+PASS Document interface: new Document() must inherit property &quot;head&quot; with the proper type (44) 
+PASS Document interface: new Document() must inherit property &quot;images&quot; with the proper type (45) 
+FAIL Document interface: new Document() must inherit property &quot;embeds&quot; with the proper type (46) assert_inherits: property &quot;embeds&quot; not found in prototype chain
+FAIL Document interface: new Document() must inherit property &quot;plugins&quot; with the proper type (47) assert_inherits: property &quot;plugins&quot; not found in prototype chain
+PASS Document interface: new Document() must inherit property &quot;links&quot; with the proper type (48) 
+PASS Document interface: new Document() must inherit property &quot;forms&quot; with the proper type (49) 
+FAIL Document interface: new Document() must inherit property &quot;scripts&quot; with the proper type (50) assert_inherits: property &quot;scripts&quot; not found in prototype chain
+PASS Document interface: new Document() must inherit property &quot;getElementsByName&quot; with the proper type (51) 
+FAIL Document interface: calling getElementsByName(DOMString) on new Document() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+FAIL Document interface: new Document() must inherit property &quot;cssElementMap&quot; with the proper type (52) assert_inherits: property &quot;cssElementMap&quot; not found in prototype chain
+PASS Document interface: new Document() must inherit property &quot;currentScript&quot; with the proper type (53) 
+FAIL Document interface: new Document() must inherit property &quot;open&quot; with the proper type (54) assert_inherits: property &quot;open&quot; not found in prototype chain
+FAIL Document interface: calling open(DOMString,DOMString) on new Document() with too few arguments must throw TypeError assert_inherits: property &quot;open&quot; not found in prototype chain
+FAIL Document interface: new Document() must inherit property &quot;open&quot; with the proper type (55) assert_inherits: property &quot;open&quot; not found in prototype chain
+FAIL Document interface: calling open(DOMString,DOMString,DOMString,boolean) on new Document() with too few arguments must throw TypeError assert_inherits: property &quot;open&quot; not found in prototype chain
+FAIL Document interface: new Document() must inherit property &quot;close&quot; with the proper type (56) assert_inherits: property &quot;close&quot; not found in prototype chain
+FAIL Document interface: new Document() must inherit property &quot;write&quot; with the proper type (57) assert_inherits: property &quot;write&quot; not found in prototype chain
+FAIL Document interface: calling write(DOMString) on new Document() with too few arguments must throw TypeError assert_inherits: property &quot;write&quot; not found in prototype chain
+FAIL Document interface: new Document() must inherit property &quot;writeln&quot; with the proper type (58) assert_inherits: property &quot;writeln&quot; not found in prototype chain
+FAIL Document interface: calling writeln(DOMString) on new Document() with too few arguments must throw TypeError assert_inherits: property &quot;writeln&quot; not found in prototype chain
+PASS Document interface: new Document() must inherit property &quot;defaultView&quot; with the proper type (59) 
+PASS Document interface: new Document() must inherit property &quot;activeElement&quot; with the proper type (60) 
+PASS Document interface: new Document() must inherit property &quot;hasFocus&quot; with the proper type (61) 
+FAIL Document interface: new Document() must inherit property &quot;designMode&quot; with the proper type (62) assert_inherits: property &quot;designMode&quot; not found in prototype chain
+PASS Document interface: new Document() must inherit property &quot;execCommand&quot; with the proper type (63) 
+FAIL Document interface: calling execCommand(DOMString,boolean,DOMString) on new Document() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: new Document() must inherit property &quot;queryCommandEnabled&quot; with the proper type (64) 
+FAIL Document interface: calling queryCommandEnabled(DOMString) on new Document() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: new Document() must inherit property &quot;queryCommandIndeterm&quot; with the proper type (65) 
+FAIL Document interface: calling queryCommandIndeterm(DOMString) on new Document() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: new Document() must inherit property &quot;queryCommandState&quot; with the proper type (66) 
+FAIL Document interface: calling queryCommandState(DOMString) on new Document() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: new Document() must inherit property &quot;queryCommandSupported&quot; with the proper type (67) 
+FAIL Document interface: calling queryCommandSupported(DOMString) on new Document() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: new Document() must inherit property &quot;queryCommandValue&quot; with the proper type (68) 
+FAIL Document interface: calling queryCommandValue(DOMString) on new Document() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+FAIL Document interface: new Document() must inherit property &quot;commands&quot; with the proper type (69) assert_inherits: property &quot;commands&quot; not found in prototype chain
+PASS Document interface: new Document() must inherit property &quot;onreadystatechange&quot; with the proper type (70) 
+FAIL Document interface: new Document() must inherit property &quot;fgColor&quot; with the proper type (71) assert_inherits: property &quot;fgColor&quot; not found in prototype chain
+FAIL Document interface: new Document() must inherit property &quot;linkColor&quot; with the proper type (72) assert_inherits: property &quot;linkColor&quot; not found in prototype chain
+FAIL Document interface: new Document() must inherit property &quot;vlinkColor&quot; with the proper type (73) assert_inherits: property &quot;vlinkColor&quot; not found in prototype chain
+FAIL Document interface: new Document() must inherit property &quot;alinkColor&quot; with the proper type (74) assert_inherits: property &quot;alinkColor&quot; not found in prototype chain
+FAIL Document interface: new Document() must inherit property &quot;bgColor&quot; with the proper type (75) assert_inherits: property &quot;bgColor&quot; not found in prototype chain
+PASS Document interface: new Document() must inherit property &quot;anchors&quot; with the proper type (76) 
+PASS Document interface: new Document() must inherit property &quot;applets&quot; with the proper type (77) 
+FAIL Document interface: new Document() must inherit property &quot;clear&quot; with the proper type (78) assert_inherits: property &quot;clear&quot; not found in prototype chain
+FAIL Document interface: new Document() must inherit property &quot;captureEvents&quot; with the proper type (79) assert_inherits: property &quot;captureEvents&quot; not found in prototype chain
+FAIL Document interface: new Document() must inherit property &quot;releaseEvents&quot; with the proper type (80) assert_inherits: property &quot;releaseEvents&quot; not found in prototype chain
+FAIL Document interface: new Document() must inherit property &quot;all&quot; with the proper type (81) assert_inherits: property &quot;all&quot; not found in prototype chain
+PASS Document interface: new Document() must inherit property &quot;getElementById&quot; with the proper type (82) 
+FAIL Document interface: calling getElementById(DOMString) on new Document() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: new Document() must inherit property &quot;children&quot; with the proper type (83) 
+PASS Document interface: new Document() must inherit property &quot;firstElementChild&quot; with the proper type (84) 
+PASS Document interface: new Document() must inherit property &quot;lastElementChild&quot; with the proper type (85) 
+PASS Document interface: new Document() must inherit property &quot;childElementCount&quot; with the proper type (86) 
+PASS Document interface: new Document() must inherit property &quot;prepend&quot; with the proper type (87) 
+PASS Document interface: calling prepend([object Object],[object Object]) on new Document() with too few arguments must throw TypeError 
+PASS Document interface: new Document() must inherit property &quot;append&quot; with the proper type (88) 
+PASS Document interface: calling append([object Object],[object Object]) on new Document() with too few arguments must throw TypeError 
+FAIL Document interface: new Document() must inherit property &quot;query&quot; with the proper type (89) assert_inherits: property &quot;query&quot; not found in prototype chain
+FAIL Document interface: calling query(DOMString) on new Document() with too few arguments must throw TypeError assert_inherits: property &quot;query&quot; not found in prototype chain
+FAIL Document interface: new Document() must inherit property &quot;queryAll&quot; with the proper type (90) assert_inherits: property &quot;queryAll&quot; not found in prototype chain
+FAIL Document interface: calling queryAll(DOMString) on new Document() with too few arguments must throw TypeError assert_inherits: property &quot;queryAll&quot; not found in prototype chain
+PASS Document interface: new Document() must inherit property &quot;querySelector&quot; with the proper type (91) 
+PASS Document interface: calling querySelector(DOMString) on new Document() with too few arguments must throw TypeError 
+PASS Document interface: new Document() must inherit property &quot;querySelectorAll&quot; with the proper type (92) 
+PASS Document interface: calling querySelectorAll(DOMString) on new Document() with too few arguments must throw TypeError 
+PASS Document interface: new Document() must inherit property &quot;onabort&quot; with the proper type (93) 
+FAIL Document interface: new Document() must inherit property &quot;onautocomplete&quot; with the proper type (94) assert_inherits: property &quot;onautocomplete&quot; not found in prototype chain
+FAIL Document interface: new Document() must inherit property &quot;onautocompleteerror&quot; with the proper type (95) assert_inherits: property &quot;onautocompleteerror&quot; not found in prototype chain
+PASS Document interface: new Document() must inherit property &quot;onblur&quot; with the proper type (96) 
+FAIL Document interface: new Document() must inherit property &quot;oncancel&quot; with the proper type (97) assert_inherits: property &quot;oncancel&quot; not found in prototype chain
+PASS Document interface: new Document() must inherit property &quot;oncanplay&quot; with the proper type (98) 
+PASS Document interface: new Document() must inherit property &quot;oncanplaythrough&quot; with the proper type (99) 
+PASS Document interface: new Document() must inherit property &quot;onchange&quot; with the proper type (100) 
+PASS Document interface: new Document() must inherit property &quot;onclick&quot; with the proper type (101) 
+FAIL Document interface: new Document() must inherit property &quot;onclose&quot; with the proper type (102) assert_inherits: property &quot;onclose&quot; not found in prototype chain
+PASS Document interface: new Document() must inherit property &quot;oncontextmenu&quot; with the proper type (103) 
+FAIL Document interface: new Document() must inherit property &quot;oncuechange&quot; with the proper type (104) assert_inherits: property &quot;oncuechange&quot; not found in prototype chain
+PASS Document interface: new Document() must inherit property &quot;ondblclick&quot; with the proper type (105) 
+PASS Document interface: new Document() must inherit property &quot;ondrag&quot; with the proper type (106) 
+PASS Document interface: new Document() must inherit property &quot;ondragend&quot; with the proper type (107) 
+PASS Document interface: new Document() must inherit property &quot;ondragenter&quot; with the proper type (108) 
+FAIL Document interface: new Document() must inherit property &quot;ondragexit&quot; with the proper type (109) assert_inherits: property &quot;ondragexit&quot; not found in prototype chain
+PASS Document interface: new Document() must inherit property &quot;ondragleave&quot; with the proper type (110) 
+PASS Document interface: new Document() must inherit property &quot;ondragover&quot; with the proper type (111) 
+PASS Document interface: new Document() must inherit property &quot;ondragstart&quot; with the proper type (112) 
+PASS Document interface: new Document() must inherit property &quot;ondrop&quot; with the proper type (113) 
+PASS Document interface: new Document() must inherit property &quot;ondurationchange&quot; with the proper type (114) 
+PASS Document interface: new Document() must inherit property &quot;onemptied&quot; with the proper type (115) 
+PASS Document interface: new Document() must inherit property &quot;onended&quot; with the proper type (116) 
+PASS Document interface: new Document() must inherit property &quot;onerror&quot; with the proper type (117) 
+PASS Document interface: new Document() must inherit property &quot;onfocus&quot; with the proper type (118) 
+PASS Document interface: new Document() must inherit property &quot;oninput&quot; with the proper type (119) 
+PASS Document interface: new Document() must inherit property &quot;oninvalid&quot; with the proper type (120) 
+PASS Document interface: new Document() must inherit property &quot;onkeydown&quot; with the proper type (121) 
+PASS Document interface: new Document() must inherit property &quot;onkeypress&quot; with the proper type (122) 
+PASS Document interface: new Document() must inherit property &quot;onkeyup&quot; with the proper type (123) 
+PASS Document interface: new Document() must inherit property &quot;onload&quot; with the proper type (124) 
+PASS Document interface: new Document() must inherit property &quot;onloadeddata&quot; with the proper type (125) 
+PASS Document interface: new Document() must inherit property &quot;onloadedmetadata&quot; with the proper type (126) 
+PASS Document interface: new Document() must inherit property &quot;onloadstart&quot; with the proper type (127) 
+PASS Document interface: new Document() must inherit property &quot;onmousedown&quot; with the proper type (128) 
+PASS Document interface: new Document() must inherit property &quot;onmouseenter&quot; with the proper type (129) 
+PASS Document interface: new Document() must inherit property &quot;onmouseleave&quot; with the proper type (130) 
+PASS Document interface: new Document() must inherit property &quot;onmousemove&quot; with the proper type (131) 
+PASS Document interface: new Document() must inherit property &quot;onmouseout&quot; with the proper type (132) 
+PASS Document interface: new Document() must inherit property &quot;onmouseover&quot; with the proper type (133) 
+PASS Document interface: new Document() must inherit property &quot;onmouseup&quot; with the proper type (134) 
+PASS Document interface: new Document() must inherit property &quot;onmousewheel&quot; with the proper type (135) 
+PASS Document interface: new Document() must inherit property &quot;onpause&quot; with the proper type (136) 
+PASS Document interface: new Document() must inherit property &quot;onplay&quot; with the proper type (137) 
+PASS Document interface: new Document() must inherit property &quot;onplaying&quot; with the proper type (138) 
+PASS Document interface: new Document() must inherit property &quot;onprogress&quot; with the proper type (139) 
+PASS Document interface: new Document() must inherit property &quot;onratechange&quot; with the proper type (140) 
+PASS Document interface: new Document() must inherit property &quot;onreset&quot; with the proper type (141) 
+PASS Document interface: new Document() must inherit property &quot;onresize&quot; with the proper type (142) 
+PASS Document interface: new Document() must inherit property &quot;onscroll&quot; with the proper type (143) 
+PASS Document interface: new Document() must inherit property &quot;onseeked&quot; with the proper type (144) 
+PASS Document interface: new Document() must inherit property &quot;onseeking&quot; with the proper type (145) 
+PASS Document interface: new Document() must inherit property &quot;onselect&quot; with the proper type (146) 
+FAIL Document interface: new Document() must inherit property &quot;onshow&quot; with the proper type (147) assert_inherits: property &quot;onshow&quot; not found in prototype chain
+FAIL Document interface: new Document() must inherit property &quot;onsort&quot; with the proper type (148) assert_inherits: property &quot;onsort&quot; not found in prototype chain
+PASS Document interface: new Document() must inherit property &quot;onstalled&quot; with the proper type (149) 
+PASS Document interface: new Document() must inherit property &quot;onsubmit&quot; with the proper type (150) 
+PASS Document interface: new Document() must inherit property &quot;onsuspend&quot; with the proper type (151) 
+PASS Document interface: new Document() must inherit property &quot;ontimeupdate&quot; with the proper type (152) 
+FAIL Document interface: new Document() must inherit property &quot;ontoggle&quot; with the proper type (153) assert_inherits: property &quot;ontoggle&quot; not found in prototype chain
+PASS Document interface: new Document() must inherit property &quot;onvolumechange&quot; with the proper type (154) 
+PASS Document interface: new Document() must inherit property &quot;onwaiting&quot; with the proper type (155) 
+PASS Node interface: new Document() must inherit property &quot;ELEMENT_NODE&quot; with the proper type (0) 
+PASS Node interface: new Document() must inherit property &quot;ATTRIBUTE_NODE&quot; with the proper type (1) 
+PASS Node interface: new Document() must inherit property &quot;TEXT_NODE&quot; with the proper type (2) 
+PASS Node interface: new Document() must inherit property &quot;CDATA_SECTION_NODE&quot; with the proper type (3) 
+PASS Node interface: new Document() must inherit property &quot;ENTITY_REFERENCE_NODE&quot; with the proper type (4) 
+PASS Node interface: new Document() must inherit property &quot;ENTITY_NODE&quot; with the proper type (5) 
+PASS Node interface: new Document() must inherit property &quot;PROCESSING_INSTRUCTION_NODE&quot; with the proper type (6) 
+PASS Node interface: new Document() must inherit property &quot;COMMENT_NODE&quot; with the proper type (7) 
+PASS Node interface: new Document() must inherit property &quot;DOCUMENT_NODE&quot; with the proper type (8) 
+PASS Node interface: new Document() must inherit property &quot;DOCUMENT_TYPE_NODE&quot; with the proper type (9) 
+PASS Node interface: new Document() must inherit property &quot;DOCUMENT_FRAGMENT_NODE&quot; with the proper type (10) 
+PASS Node interface: new Document() must inherit property &quot;NOTATION_NODE&quot; with the proper type (11) 
+PASS Node interface: new Document() must inherit property &quot;nodeType&quot; with the proper type (12) 
+PASS Node interface: new Document() must inherit property &quot;nodeName&quot; with the proper type (13) 
+PASS Node interface: new Document() must inherit property &quot;baseURI&quot; with the proper type (14) 
+PASS Node interface: new Document() must inherit property &quot;ownerDocument&quot; with the proper type (15) 
+PASS Node interface: new Document() must inherit property &quot;parentNode&quot; with the proper type (16) 
+PASS Node interface: new Document() must inherit property &quot;parentElement&quot; with the proper type (17) 
+PASS Node interface: new Document() must inherit property &quot;hasChildNodes&quot; with the proper type (18) 
+PASS Node interface: new Document() must inherit property &quot;childNodes&quot; with the proper type (19) 
+PASS Node interface: new Document() must inherit property &quot;firstChild&quot; with the proper type (20) 
+PASS Node interface: new Document() must inherit property &quot;lastChild&quot; with the proper type (21) 
+PASS Node interface: new Document() must inherit property &quot;previousSibling&quot; with the proper type (22) 
+PASS Node interface: new Document() must inherit property &quot;nextSibling&quot; with the proper type (23) 
+PASS Node interface: new Document() must inherit property &quot;nodeValue&quot; with the proper type (24) 
+PASS Node interface: new Document() must inherit property &quot;textContent&quot; with the proper type (25) 
+PASS Node interface: new Document() must inherit property &quot;normalize&quot; with the proper type (26) 
+PASS Node interface: new Document() must inherit property &quot;cloneNode&quot; with the proper type (27) 
+PASS Node interface: calling cloneNode(boolean) on new Document() with too few arguments must throw TypeError 
+PASS Node interface: new Document() must inherit property &quot;isEqualNode&quot; with the proper type (28) 
+FAIL Node interface: calling isEqualNode(Node) on new Document() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Node interface: new Document() must inherit property &quot;DOCUMENT_POSITION_DISCONNECTED&quot; with the proper type (29) 
+PASS Node interface: new Document() must inherit property &quot;DOCUMENT_POSITION_PRECEDING&quot; with the proper type (30) 
+PASS Node interface: new Document() must inherit property &quot;DOCUMENT_POSITION_FOLLOWING&quot; with the proper type (31) 
+PASS Node interface: new Document() must inherit property &quot;DOCUMENT_POSITION_CONTAINS&quot; with the proper type (32) 
+PASS Node interface: new Document() must inherit property &quot;DOCUMENT_POSITION_CONTAINED_BY&quot; with the proper type (33) 
+PASS Node interface: new Document() must inherit property &quot;DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC&quot; with the proper type (34) 
+PASS Node interface: new Document() must inherit property &quot;compareDocumentPosition&quot; with the proper type (35) 
+FAIL Node interface: calling compareDocumentPosition(Node) on new Document() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Node interface: new Document() must inherit property &quot;contains&quot; with the proper type (36) 
+FAIL Node interface: calling contains(Node) on new Document() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Node interface: new Document() must inherit property &quot;lookupPrefix&quot; with the proper type (37) 
+FAIL Node interface: calling lookupPrefix(DOMString) on new Document() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Node interface: new Document() must inherit property &quot;lookupNamespaceURI&quot; with the proper type (38) 
+FAIL Node interface: calling lookupNamespaceURI(DOMString) on new Document() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Node interface: new Document() must inherit property &quot;isDefaultNamespace&quot; with the proper type (39) 
+FAIL Node interface: calling isDefaultNamespace(DOMString) on new Document() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Node interface: new Document() must inherit property &quot;insertBefore&quot; with the proper type (40) 
+FAIL Node interface: calling insertBefore(Node,Node) on new Document() with too few arguments must throw TypeError assert_throws: Called with 1 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; threw object &quot;HierarchyRequestError (DOM Exception 3): The operation wo...&quot; (&quot;HierarchyRequestError&quot;) expected object &quot;TypeError&quot; (&quot;TypeError&quot;)
+PASS Node interface: new Document() must inherit property &quot;appendChild&quot; with the proper type (41) 
+PASS Node interface: calling appendChild(Node) on new Document() with too few arguments must throw TypeError 
+PASS Node interface: new Document() must inherit property &quot;replaceChild&quot; with the proper type (42) 
+PASS Node interface: calling replaceChild(Node,Node) on new Document() with too few arguments must throw TypeError 
+PASS Node interface: new Document() must inherit property &quot;removeChild&quot; with the proper type (43) 
+PASS Node interface: calling removeChild(Node) on new Document() with too few arguments must throw TypeError 
+PASS EventTarget interface: new Document() must inherit property &quot;addEventListener&quot; with the proper type (0) 
+FAIL EventTarget interface: calling addEventListener(DOMString,EventListener,boolean) on new Document() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS EventTarget interface: new Document() must inherit property &quot;removeEventListener&quot; with the proper type (1) 
+FAIL EventTarget interface: calling removeEventListener(DOMString,EventListener,boolean) on new Document() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS EventTarget interface: new Document() must inherit property &quot;dispatchEvent&quot; with the proper type (2) 
+PASS EventTarget interface: calling dispatchEvent(Event) on new Document() with too few arguments must throw TypeError 
+FAIL XMLDocument interface: operation load(DOMString) assert_own_property: interface prototype object missing non-static operation expected property &quot;load&quot; missing
+PASS XMLDocument must be primary interface of document.implementation.createDocument(null, &quot;&quot;, null) 
+PASS Stringification of document.implementation.createDocument(null, &quot;&quot;, null) 
+FAIL XMLDocument interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;load&quot; with the proper type (0) assert_inherits: property &quot;load&quot; not found in prototype chain
+FAIL XMLDocument interface: calling load(DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_inherits: property &quot;load&quot; not found in prototype chain
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;implementation&quot; with the proper type (0) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;URL&quot; with the proper type (1) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;documentURI&quot; with the proper type (2) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;origin&quot; with the proper type (3) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;compatMode&quot; with the proper type (4) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;characterSet&quot; with the proper type (5) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;charset&quot; with the proper type (6) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;inputEncoding&quot; with the proper type (7) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;contentType&quot; with the proper type (8) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;doctype&quot; with the proper type (9) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;documentElement&quot; with the proper type (10) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;getElementsByTagName&quot; with the proper type (11) 
+FAIL Document interface: calling getElementsByTagName(DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;getElementsByTagNameNS&quot; with the proper type (12) 
+FAIL Document interface: calling getElementsByTagNameNS(DOMString,DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;getElementsByClassName&quot; with the proper type (13) 
+FAIL Document interface: calling getElementsByClassName(DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;createElement&quot; with the proper type (14) 
+PASS Document interface: calling createElement(DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;createElementNS&quot; with the proper type (15) 
+FAIL Document interface: calling createElementNS(DOMString,DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;createDocumentFragment&quot; with the proper type (16) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;createTextNode&quot; with the proper type (17) 
+FAIL Document interface: calling createTextNode(DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;createComment&quot; with the proper type (18) 
+FAIL Document interface: calling createComment(DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;createProcessingInstruction&quot; with the proper type (19) 
+FAIL Document interface: calling createProcessingInstruction(DOMString,DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;importNode&quot; with the proper type (20) 
+PASS Document interface: calling importNode(Node,boolean) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;adoptNode&quot; with the proper type (21) 
+PASS Document interface: calling adoptNode(Node) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;createAttribute&quot; with the proper type (22) 
+FAIL Document interface: calling createAttribute(DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;createAttributeNS&quot; with the proper type (23) 
+FAIL Document interface: calling createAttributeNS(DOMString,DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;createEvent&quot; with the proper type (24) 
+FAIL Document interface: calling createEvent(DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; threw object &quot;NotSupportedError (DOM Exception 9): The operation is not...&quot; (&quot;NotSupportedError&quot;) expected object &quot;TypeError&quot; (&quot;TypeError&quot;)
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;createRange&quot; with the proper type (25) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;createNodeIterator&quot; with the proper type (26) 
+PASS Document interface: calling createNodeIterator(Node,unsigned long,NodeFilter) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;createTreeWalker&quot; with the proper type (27) 
+PASS Document interface: calling createTreeWalker(Node,unsigned long,NodeFilter) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;styleSheets&quot; with the proper type (28) 
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;selectedStyleSheetSet&quot; with the proper type (29) assert_inherits: property &quot;selectedStyleSheetSet&quot; not found in prototype chain
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;lastStyleSheetSet&quot; with the proper type (30) assert_inherits: property &quot;lastStyleSheetSet&quot; not found in prototype chain
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;preferredStyleSheetSet&quot; with the proper type (31) assert_inherits: property &quot;preferredStyleSheetSet&quot; not found in prototype chain
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;styleSheetSets&quot; with the proper type (32) assert_inherits: property &quot;styleSheetSets&quot; not found in prototype chain
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;enableStyleSheetsForSet&quot; with the proper type (33) assert_inherits: property &quot;enableStyleSheetsForSet&quot; not found in prototype chain
+FAIL Document interface: calling enableStyleSheetsForSet(DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_inherits: property &quot;enableStyleSheetsForSet&quot; not found in prototype chain
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must have own property &quot;location&quot; 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;domain&quot; with the proper type (35) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;referrer&quot; with the proper type (36) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;cookie&quot; with the proper type (37) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;lastModified&quot; with the proper type (38) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;readyState&quot; with the proper type (39) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;title&quot; with the proper type (41) 
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;dir&quot; with the proper type (42) assert_inherits: property &quot;dir&quot; not found in prototype chain
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;body&quot; with the proper type (43) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;head&quot; with the proper type (44) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;images&quot; with the proper type (45) 
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;embeds&quot; with the proper type (46) assert_inherits: property &quot;embeds&quot; not found in prototype chain
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;plugins&quot; with the proper type (47) assert_inherits: property &quot;plugins&quot; not found in prototype chain
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;links&quot; with the proper type (48) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;forms&quot; with the proper type (49) 
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;scripts&quot; with the proper type (50) assert_inherits: property &quot;scripts&quot; not found in prototype chain
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;getElementsByName&quot; with the proper type (51) 
+FAIL Document interface: calling getElementsByName(DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;cssElementMap&quot; with the proper type (52) assert_inherits: property &quot;cssElementMap&quot; not found in prototype chain
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;currentScript&quot; with the proper type (53) 
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;open&quot; with the proper type (54) assert_inherits: property &quot;open&quot; not found in prototype chain
+FAIL Document interface: calling open(DOMString,DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_inherits: property &quot;open&quot; not found in prototype chain
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;open&quot; with the proper type (55) assert_inherits: property &quot;open&quot; not found in prototype chain
+FAIL Document interface: calling open(DOMString,DOMString,DOMString,boolean) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_inherits: property &quot;open&quot; not found in prototype chain
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;close&quot; with the proper type (56) assert_inherits: property &quot;close&quot; not found in prototype chain
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;write&quot; with the proper type (57) assert_inherits: property &quot;write&quot; not found in prototype chain
+FAIL Document interface: calling write(DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_inherits: property &quot;write&quot; not found in prototype chain
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;writeln&quot; with the proper type (58) assert_inherits: property &quot;writeln&quot; not found in prototype chain
+FAIL Document interface: calling writeln(DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_inherits: property &quot;writeln&quot; not found in prototype chain
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;defaultView&quot; with the proper type (59) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;activeElement&quot; with the proper type (60) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;hasFocus&quot; with the proper type (61) 
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;designMode&quot; with the proper type (62) assert_inherits: property &quot;designMode&quot; not found in prototype chain
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;execCommand&quot; with the proper type (63) 
+FAIL Document interface: calling execCommand(DOMString,boolean,DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;queryCommandEnabled&quot; with the proper type (64) 
+FAIL Document interface: calling queryCommandEnabled(DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;queryCommandIndeterm&quot; with the proper type (65) 
+FAIL Document interface: calling queryCommandIndeterm(DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;queryCommandState&quot; with the proper type (66) 
+FAIL Document interface: calling queryCommandState(DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;queryCommandSupported&quot; with the proper type (67) 
+FAIL Document interface: calling queryCommandSupported(DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;queryCommandValue&quot; with the proper type (68) 
+FAIL Document interface: calling queryCommandValue(DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;commands&quot; with the proper type (69) assert_inherits: property &quot;commands&quot; not found in prototype chain
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onreadystatechange&quot; with the proper type (70) 
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;fgColor&quot; with the proper type (71) assert_inherits: property &quot;fgColor&quot; not found in prototype chain
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;linkColor&quot; with the proper type (72) assert_inherits: property &quot;linkColor&quot; not found in prototype chain
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;vlinkColor&quot; with the proper type (73) assert_inherits: property &quot;vlinkColor&quot; not found in prototype chain
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;alinkColor&quot; with the proper type (74) assert_inherits: property &quot;alinkColor&quot; not found in prototype chain
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;bgColor&quot; with the proper type (75) assert_inherits: property &quot;bgColor&quot; not found in prototype chain
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;anchors&quot; with the proper type (76) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;applets&quot; with the proper type (77) 
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;clear&quot; with the proper type (78) assert_inherits: property &quot;clear&quot; not found in prototype chain
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;captureEvents&quot; with the proper type (79) assert_inherits: property &quot;captureEvents&quot; not found in prototype chain
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;releaseEvents&quot; with the proper type (80) assert_inherits: property &quot;releaseEvents&quot; not found in prototype chain
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;all&quot; with the proper type (81) assert_inherits: property &quot;all&quot; not found in prototype chain
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;getElementById&quot; with the proper type (82) 
+FAIL Document interface: calling getElementById(DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;children&quot; with the proper type (83) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;firstElementChild&quot; with the proper type (84) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;lastElementChild&quot; with the proper type (85) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;childElementCount&quot; with the proper type (86) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;prepend&quot; with the proper type (87) 
+PASS Document interface: calling prepend([object Object],[object Object]) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;append&quot; with the proper type (88) 
+PASS Document interface: calling append([object Object],[object Object]) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError 
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;query&quot; with the proper type (89) assert_inherits: property &quot;query&quot; not found in prototype chain
+FAIL Document interface: calling query(DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_inherits: property &quot;query&quot; not found in prototype chain
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;queryAll&quot; with the proper type (90) assert_inherits: property &quot;queryAll&quot; not found in prototype chain
+FAIL Document interface: calling queryAll(DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_inherits: property &quot;queryAll&quot; not found in prototype chain
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;querySelector&quot; with the proper type (91) 
+PASS Document interface: calling querySelector(DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;querySelectorAll&quot; with the proper type (92) 
+PASS Document interface: calling querySelectorAll(DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onabort&quot; with the proper type (93) 
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onautocomplete&quot; with the proper type (94) assert_inherits: property &quot;onautocomplete&quot; not found in prototype chain
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onautocompleteerror&quot; with the proper type (95) assert_inherits: property &quot;onautocompleteerror&quot; not found in prototype chain
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onblur&quot; with the proper type (96) 
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;oncancel&quot; with the proper type (97) assert_inherits: property &quot;oncancel&quot; not found in prototype chain
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;oncanplay&quot; with the proper type (98) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;oncanplaythrough&quot; with the proper type (99) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onchange&quot; with the proper type (100) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onclick&quot; with the proper type (101) 
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onclose&quot; with the proper type (102) assert_inherits: property &quot;onclose&quot; not found in prototype chain
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;oncontextmenu&quot; with the proper type (103) 
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;oncuechange&quot; with the proper type (104) assert_inherits: property &quot;oncuechange&quot; not found in prototype chain
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;ondblclick&quot; with the proper type (105) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;ondrag&quot; with the proper type (106) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;ondragend&quot; with the proper type (107) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;ondragenter&quot; with the proper type (108) 
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;ondragexit&quot; with the proper type (109) assert_inherits: property &quot;ondragexit&quot; not found in prototype chain
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;ondragleave&quot; with the proper type (110) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;ondragover&quot; with the proper type (111) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;ondragstart&quot; with the proper type (112) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;ondrop&quot; with the proper type (113) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;ondurationchange&quot; with the proper type (114) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onemptied&quot; with the proper type (115) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onended&quot; with the proper type (116) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onerror&quot; with the proper type (117) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onfocus&quot; with the proper type (118) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;oninput&quot; with the proper type (119) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;oninvalid&quot; with the proper type (120) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onkeydown&quot; with the proper type (121) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onkeypress&quot; with the proper type (122) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onkeyup&quot; with the proper type (123) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onload&quot; with the proper type (124) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onloadeddata&quot; with the proper type (125) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onloadedmetadata&quot; with the proper type (126) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onloadstart&quot; with the proper type (127) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onmousedown&quot; with the proper type (128) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onmouseenter&quot; with the proper type (129) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onmouseleave&quot; with the proper type (130) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onmousemove&quot; with the proper type (131) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onmouseout&quot; with the proper type (132) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onmouseover&quot; with the proper type (133) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onmouseup&quot; with the proper type (134) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onmousewheel&quot; with the proper type (135) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onpause&quot; with the proper type (136) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onplay&quot; with the proper type (137) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onplaying&quot; with the proper type (138) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onprogress&quot; with the proper type (139) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onratechange&quot; with the proper type (140) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onreset&quot; with the proper type (141) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onresize&quot; with the proper type (142) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onscroll&quot; with the proper type (143) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onseeked&quot; with the proper type (144) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onseeking&quot; with the proper type (145) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onselect&quot; with the proper type (146) 
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onshow&quot; with the proper type (147) assert_inherits: property &quot;onshow&quot; not found in prototype chain
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onsort&quot; with the proper type (148) assert_inherits: property &quot;onsort&quot; not found in prototype chain
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onstalled&quot; with the proper type (149) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onsubmit&quot; with the proper type (150) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onsuspend&quot; with the proper type (151) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;ontimeupdate&quot; with the proper type (152) 
+FAIL Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;ontoggle&quot; with the proper type (153) assert_inherits: property &quot;ontoggle&quot; not found in prototype chain
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onvolumechange&quot; with the proper type (154) 
+PASS Document interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;onwaiting&quot; with the proper type (155) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;ELEMENT_NODE&quot; with the proper type (0) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;ATTRIBUTE_NODE&quot; with the proper type (1) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;TEXT_NODE&quot; with the proper type (2) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;CDATA_SECTION_NODE&quot; with the proper type (3) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;ENTITY_REFERENCE_NODE&quot; with the proper type (4) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;ENTITY_NODE&quot; with the proper type (5) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;PROCESSING_INSTRUCTION_NODE&quot; with the proper type (6) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;COMMENT_NODE&quot; with the proper type (7) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;DOCUMENT_NODE&quot; with the proper type (8) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;DOCUMENT_TYPE_NODE&quot; with the proper type (9) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;DOCUMENT_FRAGMENT_NODE&quot; with the proper type (10) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;NOTATION_NODE&quot; with the proper type (11) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;nodeType&quot; with the proper type (12) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;nodeName&quot; with the proper type (13) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;baseURI&quot; with the proper type (14) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;ownerDocument&quot; with the proper type (15) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;parentNode&quot; with the proper type (16) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;parentElement&quot; with the proper type (17) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;hasChildNodes&quot; with the proper type (18) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;childNodes&quot; with the proper type (19) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;firstChild&quot; with the proper type (20) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;lastChild&quot; with the proper type (21) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;previousSibling&quot; with the proper type (22) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;nextSibling&quot; with the proper type (23) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;nodeValue&quot; with the proper type (24) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;textContent&quot; with the proper type (25) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;normalize&quot; with the proper type (26) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;cloneNode&quot; with the proper type (27) 
+PASS Node interface: calling cloneNode(boolean) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;isEqualNode&quot; with the proper type (28) 
+FAIL Node interface: calling isEqualNode(Node) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;DOCUMENT_POSITION_DISCONNECTED&quot; with the proper type (29) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;DOCUMENT_POSITION_PRECEDING&quot; with the proper type (30) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;DOCUMENT_POSITION_FOLLOWING&quot; with the proper type (31) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;DOCUMENT_POSITION_CONTAINS&quot; with the proper type (32) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;DOCUMENT_POSITION_CONTAINED_BY&quot; with the proper type (33) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC&quot; with the proper type (34) 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;compareDocumentPosition&quot; with the proper type (35) 
+FAIL Node interface: calling compareDocumentPosition(Node) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;contains&quot; with the proper type (36) 
+FAIL Node interface: calling contains(Node) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;lookupPrefix&quot; with the proper type (37) 
+FAIL Node interface: calling lookupPrefix(DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;lookupNamespaceURI&quot; with the proper type (38) 
+FAIL Node interface: calling lookupNamespaceURI(DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;isDefaultNamespace&quot; with the proper type (39) 
+FAIL Node interface: calling isDefaultNamespace(DOMString) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;insertBefore&quot; with the proper type (40) 
+FAIL Node interface: calling insertBefore(Node,Node) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_throws: Called with 1 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; threw object &quot;HierarchyRequestError (DOM Exception 3): The operation wo...&quot; (&quot;HierarchyRequestError&quot;) expected object &quot;TypeError&quot; (&quot;TypeError&quot;)
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;appendChild&quot; with the proper type (41) 
+PASS Node interface: calling appendChild(Node) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;replaceChild&quot; with the proper type (42) 
+PASS Node interface: calling replaceChild(Node,Node) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError 
+PASS Node interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;removeChild&quot; with the proper type (43) 
+PASS Node interface: calling removeChild(Node) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError 
+PASS EventTarget interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;addEventListener&quot; with the proper type (0) 
+FAIL EventTarget interface: calling addEventListener(DOMString,EventListener,boolean) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS EventTarget interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;removeEventListener&quot; with the proper type (1) 
+FAIL EventTarget interface: calling removeEventListener(DOMString,EventListener,boolean) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS EventTarget interface: document.implementation.createDocument(null, &quot;&quot;, null) must inherit property &quot;dispatchEvent&quot; with the proper type (2) 
+PASS EventTarget interface: calling dispatchEvent(Event) on document.implementation.createDocument(null, &quot;&quot;, null) with too few arguments must throw TypeError 
+FAIL MouseEvent interface: attribute region assert_true: The prototype object must have a property &quot;region&quot; expected true got false
+FAIL Touch interface: attribute region assert_own_property: self does not have own property &quot;Touch&quot; expected property &quot;Touch&quot; missing
+PASS HTMLAllCollection interface: existence and properties of interface object 
+PASS HTMLAllCollection interface object length 
+PASS HTMLAllCollection interface object name 
+PASS HTMLAllCollection interface: existence and properties of interface prototype object 
+PASS HTMLAllCollection interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLAllCollection interface: attribute length 
+FAIL HTMLAllCollection interface: operation item(unsigned long) assert_equals: property has wrong .length expected 1 but got 0
+FAIL HTMLAllCollection interface: operation item(DOMString) assert_equals: property has wrong .length expected 1 but got 0
+PASS HTMLAllCollection interface: operation namedItem(DOMString) 
+FAIL HTMLAllCollection must be primary interface of document.all assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;undefined&quot;
+FAIL Stringification of document.all assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;undefined&quot;
+FAIL HTMLAllCollection interface: document.all must inherit property &quot;length&quot; with the proper type (0) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;undefined&quot;
+FAIL HTMLAllCollection interface: document.all must inherit property &quot;item&quot; with the proper type (1) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;undefined&quot;
+FAIL HTMLAllCollection interface: calling item(unsigned long) on document.all with too few arguments must throw TypeError assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;undefined&quot;
+FAIL HTMLAllCollection interface: document.all must inherit property &quot;item&quot; with the proper type (2) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;undefined&quot;
+FAIL HTMLAllCollection interface: calling item(DOMString) on document.all with too few arguments must throw TypeError assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;undefined&quot;
+FAIL HTMLAllCollection interface: document.all must inherit property &quot;namedItem&quot; with the proper type (3) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;undefined&quot;
+FAIL HTMLAllCollection interface: calling namedItem(DOMString) on document.all with too few arguments must throw TypeError assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;undefined&quot;
+PASS HTMLFormControlsCollection interface: existence and properties of interface object 
+PASS HTMLFormControlsCollection interface object length 
+PASS HTMLFormControlsCollection interface object name 
+PASS HTMLFormControlsCollection interface: existence and properties of interface prototype object 
+PASS HTMLFormControlsCollection interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+FAIL HTMLFormControlsCollection interface: operation namedItem(DOMString) assert_equals: property has wrong .length expected 1 but got 0
+FAIL HTMLFormControlsCollection must be primary interface of document.createElement(&quot;form&quot;).elements assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL Stringification of document.createElement(&quot;form&quot;).elements assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLFormControlsCollection interface: document.createElement(&quot;form&quot;).elements must inherit property &quot;namedItem&quot; with the proper type (0) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLFormControlsCollection interface: calling namedItem(DOMString) on document.createElement(&quot;form&quot;).elements with too few arguments must throw TypeError assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLCollection interface: document.createElement(&quot;form&quot;).elements must inherit property &quot;length&quot; with the proper type (0) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLCollection interface: document.createElement(&quot;form&quot;).elements must inherit property &quot;item&quot; with the proper type (1) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLCollection interface: calling item(unsigned long) on document.createElement(&quot;form&quot;).elements with too few arguments must throw TypeError assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLCollection interface: document.createElement(&quot;form&quot;).elements must inherit property &quot;namedItem&quot; with the proper type (2) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLCollection interface: calling namedItem(DOMString) on document.createElement(&quot;form&quot;).elements with too few arguments must throw TypeError assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+PASS RadioNodeList interface: existence and properties of interface object 
+PASS RadioNodeList interface object length 
+PASS RadioNodeList interface object name 
+PASS RadioNodeList interface: existence and properties of interface prototype object 
+PASS RadioNodeList interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS RadioNodeList interface: attribute value 
+PASS HTMLOptionsCollection interface: existence and properties of interface object 
+PASS HTMLOptionsCollection interface object length 
+PASS HTMLOptionsCollection interface object name 
+PASS HTMLOptionsCollection interface: existence and properties of interface prototype object 
+PASS HTMLOptionsCollection interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLOptionsCollection interface: attribute length 
+PASS HTMLOptionsCollection interface: operation add([object Object],[object Object],[object Object],[object Object]) 
+FAIL HTMLOptionsCollection interface: operation remove(long) assert_equals: property has wrong .length expected 1 but got 0
+PASS HTMLOptionsCollection interface: attribute selectedIndex 
+FAIL HTMLOptionsCollection must be primary interface of document.createElement(&quot;select&quot;).options assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL Stringification of document.createElement(&quot;select&quot;).options assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLOptionsCollection interface: document.createElement(&quot;select&quot;).options must inherit property &quot;length&quot; with the proper type (0) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLOptionsCollection interface: document.createElement(&quot;select&quot;).options must inherit property &quot;add&quot; with the proper type (3) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLOptionsCollection interface: calling add([object Object],[object Object],[object Object],[object Object]) on document.createElement(&quot;select&quot;).options with too few arguments must throw TypeError assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLOptionsCollection interface: document.createElement(&quot;select&quot;).options must inherit property &quot;remove&quot; with the proper type (4) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLOptionsCollection interface: calling remove(long) on document.createElement(&quot;select&quot;).options with too few arguments must throw TypeError assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLOptionsCollection interface: document.createElement(&quot;select&quot;).options must inherit property &quot;selectedIndex&quot; with the proper type (5) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLCollection interface: document.createElement(&quot;select&quot;).options must inherit property &quot;length&quot; with the proper type (0) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLCollection interface: document.createElement(&quot;select&quot;).options must inherit property &quot;item&quot; with the proper type (1) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLCollection interface: calling item(unsigned long) on document.createElement(&quot;select&quot;).options with too few arguments must throw TypeError assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLCollection interface: document.createElement(&quot;select&quot;).options must inherit property &quot;namedItem&quot; with the proper type (2) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLCollection interface: calling namedItem(DOMString) on document.createElement(&quot;select&quot;).options with too few arguments must throw TypeError assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+PASS DOMStringMap interface: existence and properties of interface object 
+PASS DOMStringMap interface object length 
+PASS DOMStringMap interface object name 
+PASS DOMStringMap interface: existence and properties of interface prototype object 
+PASS DOMStringMap interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS DOMStringMap must be primary interface of document.head.dataset 
+PASS Stringification of document.head.dataset 
+FAIL DOMElementMap interface: existence and properties of interface object assert_own_property: self does not have own property &quot;DOMElementMap&quot; expected property &quot;DOMElementMap&quot; missing
+FAIL DOMElementMap interface object length assert_own_property: self does not have own property &quot;DOMElementMap&quot; expected property &quot;DOMElementMap&quot; missing
+FAIL DOMElementMap interface object name assert_own_property: self does not have own property &quot;DOMElementMap&quot; expected property &quot;DOMElementMap&quot; missing
+FAIL DOMElementMap interface: existence and properties of interface prototype object assert_own_property: self does not have own property &quot;DOMElementMap&quot; expected property &quot;DOMElementMap&quot; missing
+FAIL DOMElementMap interface: existence and properties of interface prototype object's &quot;constructor&quot; property assert_own_property: self does not have own property &quot;DOMElementMap&quot; expected property &quot;DOMElementMap&quot; missing
+FAIL DOMElementMap must be primary interface of document.cssElementMap assert_equals: wrong typeof object expected &quot;object&quot; but got &quot;undefined&quot;
+FAIL Stringification of document.cssElementMap assert_equals: wrong typeof object expected &quot;object&quot; but got &quot;undefined&quot;
+PASS HTMLElement interface: existence and properties of interface object 
+PASS HTMLElement interface object length 
+PASS HTMLElement interface object name 
+PASS HTMLElement interface: existence and properties of interface prototype object 
+PASS HTMLElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLElement interface: attribute title 
+PASS HTMLElement interface: attribute lang 
+PASS HTMLElement interface: attribute translate 
+PASS HTMLElement interface: attribute dir 
+FAIL HTMLElement interface: attribute dataset assert_own_property: expected property &quot;dataset&quot; missing
+PASS HTMLElement interface: attribute hidden 
+PASS HTMLElement interface: operation click() 
+PASS HTMLElement interface: attribute tabIndex 
+PASS HTMLElement interface: operation focus() 
+PASS HTMLElement interface: operation blur() 
+PASS HTMLElement interface: attribute accessKey 
+FAIL HTMLElement interface: attribute accessKeyLabel assert_true: The prototype object must have a property &quot;accessKeyLabel&quot; expected true got false
+PASS HTMLElement interface: attribute draggable 
+FAIL HTMLElement interface: attribute dropzone assert_true: The prototype object must have a property &quot;dropzone&quot; expected true got false
+PASS HTMLElement interface: attribute contentEditable 
+PASS HTMLElement interface: attribute isContentEditable 
+FAIL HTMLElement interface: attribute contextMenu assert_true: The prototype object must have a property &quot;contextMenu&quot; expected true got false
+PASS HTMLElement interface: attribute spellcheck 
+FAIL HTMLElement interface: operation forceSpellCheck() assert_own_property: interface prototype object missing non-static operation expected property &quot;forceSpellCheck&quot; missing
+FAIL HTMLElement interface: attribute commandType assert_true: The prototype object must have a property &quot;commandType&quot; expected true got false
+FAIL HTMLElement interface: attribute commandLabel assert_true: The prototype object must have a property &quot;commandLabel&quot; expected true got false
+FAIL HTMLElement interface: attribute commandIcon assert_true: The prototype object must have a property &quot;commandIcon&quot; expected true got false
+FAIL HTMLElement interface: attribute commandHidden assert_true: The prototype object must have a property &quot;commandHidden&quot; expected true got false
+FAIL HTMLElement interface: attribute commandDisabled assert_true: The prototype object must have a property &quot;commandDisabled&quot; expected true got false
+FAIL HTMLElement interface: attribute commandChecked assert_true: The prototype object must have a property &quot;commandChecked&quot; expected true got false
+PASS HTMLElement interface: attribute onabort 
+FAIL HTMLElement interface: attribute onautocomplete assert_true: The prototype object must have a property &quot;onautocomplete&quot; expected true got false
+FAIL HTMLElement interface: attribute onautocompleteerror assert_true: The prototype object must have a property &quot;onautocompleteerror&quot; expected true got false
+PASS HTMLElement interface: attribute onblur 
+FAIL HTMLElement interface: attribute oncancel assert_true: The prototype object must have a property &quot;oncancel&quot; expected true got false
+PASS HTMLElement interface: attribute oncanplay 
+PASS HTMLElement interface: attribute oncanplaythrough 
+PASS HTMLElement interface: attribute onchange 
+PASS HTMLElement interface: attribute onclick 
+FAIL HTMLElement interface: attribute onclose assert_true: The prototype object must have a property &quot;onclose&quot; expected true got false
+PASS HTMLElement interface: attribute oncontextmenu 
+FAIL HTMLElement interface: attribute oncuechange assert_true: The prototype object must have a property &quot;oncuechange&quot; expected true got false
+PASS HTMLElement interface: attribute ondblclick 
+PASS HTMLElement interface: attribute ondrag 
+PASS HTMLElement interface: attribute ondragend 
+PASS HTMLElement interface: attribute ondragenter 
+FAIL HTMLElement interface: attribute ondragexit assert_true: The prototype object must have a property &quot;ondragexit&quot; expected true got false
+PASS HTMLElement interface: attribute ondragleave 
+PASS HTMLElement interface: attribute ondragover 
+PASS HTMLElement interface: attribute ondragstart 
+PASS HTMLElement interface: attribute ondrop 
+PASS HTMLElement interface: attribute ondurationchange 
+PASS HTMLElement interface: attribute onemptied 
+PASS HTMLElement interface: attribute onended 
+PASS HTMLElement interface: attribute onerror 
+PASS HTMLElement interface: attribute onfocus 
+PASS HTMLElement interface: attribute oninput 
+PASS HTMLElement interface: attribute oninvalid 
+PASS HTMLElement interface: attribute onkeydown 
+PASS HTMLElement interface: attribute onkeypress 
+PASS HTMLElement interface: attribute onkeyup 
+PASS HTMLElement interface: attribute onload 
+PASS HTMLElement interface: attribute onloadeddata 
+PASS HTMLElement interface: attribute onloadedmetadata 
+PASS HTMLElement interface: attribute onloadstart 
+PASS HTMLElement interface: attribute onmousedown 
+PASS HTMLElement interface: attribute onmouseenter 
+PASS HTMLElement interface: attribute onmouseleave 
+PASS HTMLElement interface: attribute onmousemove 
+PASS HTMLElement interface: attribute onmouseout 
+PASS HTMLElement interface: attribute onmouseover 
+PASS HTMLElement interface: attribute onmouseup 
+PASS HTMLElement interface: attribute onmousewheel 
+PASS HTMLElement interface: attribute onpause 
+PASS HTMLElement interface: attribute onplay 
+PASS HTMLElement interface: attribute onplaying 
+PASS HTMLElement interface: attribute onprogress 
+PASS HTMLElement interface: attribute onratechange 
+PASS HTMLElement interface: attribute onreset 
+PASS HTMLElement interface: attribute onresize 
+PASS HTMLElement interface: attribute onscroll 
+PASS HTMLElement interface: attribute onseeked 
+PASS HTMLElement interface: attribute onseeking 
+PASS HTMLElement interface: attribute onselect 
+FAIL HTMLElement interface: attribute onshow assert_true: The prototype object must have a property &quot;onshow&quot; expected true got false
+FAIL HTMLElement interface: attribute onsort assert_true: The prototype object must have a property &quot;onsort&quot; expected true got false
+PASS HTMLElement interface: attribute onstalled 
+PASS HTMLElement interface: attribute onsubmit 
+PASS HTMLElement interface: attribute onsuspend 
+PASS HTMLElement interface: attribute ontimeupdate 
+FAIL HTMLElement interface: attribute ontoggle assert_true: The prototype object must have a property &quot;ontoggle&quot; expected true got false
+PASS HTMLElement interface: attribute onvolumechange 
+PASS HTMLElement interface: attribute onwaiting 
+PASS HTMLElement must be primary interface of document.createElement(&quot;noscript&quot;) 
+PASS Stringification of document.createElement(&quot;noscript&quot;) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;title&quot; with the proper type (0) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;lang&quot; with the proper type (1) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;translate&quot; with the proper type (2) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;dir&quot; with the proper type (3) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;dataset&quot; with the proper type (4) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;hidden&quot; with the proper type (5) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;click&quot; with the proper type (6) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;tabIndex&quot; with the proper type (7) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;focus&quot; with the proper type (8) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;blur&quot; with the proper type (9) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;accessKey&quot; with the proper type (10) 
+FAIL HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;accessKeyLabel&quot; with the proper type (11) assert_inherits: property &quot;accessKeyLabel&quot; not found in prototype chain
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;draggable&quot; with the proper type (12) 
+FAIL HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;dropzone&quot; with the proper type (13) assert_inherits: property &quot;dropzone&quot; not found in prototype chain
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;contentEditable&quot; with the proper type (14) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;isContentEditable&quot; with the proper type (15) 
+FAIL HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;contextMenu&quot; with the proper type (16) assert_inherits: property &quot;contextMenu&quot; not found in prototype chain
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;spellcheck&quot; with the proper type (17) 
+FAIL HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;forceSpellCheck&quot; with the proper type (18) assert_inherits: property &quot;forceSpellCheck&quot; not found in prototype chain
+FAIL HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;commandType&quot; with the proper type (19) assert_inherits: property &quot;commandType&quot; not found in prototype chain
+FAIL HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;commandLabel&quot; with the proper type (20) assert_inherits: property &quot;commandLabel&quot; not found in prototype chain
+FAIL HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;commandIcon&quot; with the proper type (21) assert_inherits: property &quot;commandIcon&quot; not found in prototype chain
+FAIL HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;commandHidden&quot; with the proper type (22) assert_inherits: property &quot;commandHidden&quot; not found in prototype chain
+FAIL HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;commandDisabled&quot; with the proper type (23) assert_inherits: property &quot;commandDisabled&quot; not found in prototype chain
+FAIL HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;commandChecked&quot; with the proper type (24) assert_inherits: property &quot;commandChecked&quot; not found in prototype chain
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onabort&quot; with the proper type (25) 
+FAIL HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onautocomplete&quot; with the proper type (26) assert_inherits: property &quot;onautocomplete&quot; not found in prototype chain
+FAIL HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onautocompleteerror&quot; with the proper type (27) assert_inherits: property &quot;onautocompleteerror&quot; not found in prototype chain
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onblur&quot; with the proper type (28) 
+FAIL HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;oncancel&quot; with the proper type (29) assert_inherits: property &quot;oncancel&quot; not found in prototype chain
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;oncanplay&quot; with the proper type (30) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;oncanplaythrough&quot; with the proper type (31) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onchange&quot; with the proper type (32) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onclick&quot; with the proper type (33) 
+FAIL HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onclose&quot; with the proper type (34) assert_inherits: property &quot;onclose&quot; not found in prototype chain
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;oncontextmenu&quot; with the proper type (35) 
+FAIL HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;oncuechange&quot; with the proper type (36) assert_inherits: property &quot;oncuechange&quot; not found in prototype chain
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;ondblclick&quot; with the proper type (37) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;ondrag&quot; with the proper type (38) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;ondragend&quot; with the proper type (39) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;ondragenter&quot; with the proper type (40) 
+FAIL HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;ondragexit&quot; with the proper type (41) assert_inherits: property &quot;ondragexit&quot; not found in prototype chain
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;ondragleave&quot; with the proper type (42) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;ondragover&quot; with the proper type (43) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;ondragstart&quot; with the proper type (44) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;ondrop&quot; with the proper type (45) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;ondurationchange&quot; with the proper type (46) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onemptied&quot; with the proper type (47) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onended&quot; with the proper type (48) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onerror&quot; with the proper type (49) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onfocus&quot; with the proper type (50) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;oninput&quot; with the proper type (51) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;oninvalid&quot; with the proper type (52) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onkeydown&quot; with the proper type (53) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onkeypress&quot; with the proper type (54) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onkeyup&quot; with the proper type (55) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onload&quot; with the proper type (56) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onloadeddata&quot; with the proper type (57) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onloadedmetadata&quot; with the proper type (58) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onloadstart&quot; with the proper type (59) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onmousedown&quot; with the proper type (60) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onmouseenter&quot; with the proper type (61) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onmouseleave&quot; with the proper type (62) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onmousemove&quot; with the proper type (63) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onmouseout&quot; with the proper type (64) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onmouseover&quot; with the proper type (65) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onmouseup&quot; with the proper type (66) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onmousewheel&quot; with the proper type (67) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onpause&quot; with the proper type (68) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onplay&quot; with the proper type (69) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onplaying&quot; with the proper type (70) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onprogress&quot; with the proper type (71) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onratechange&quot; with the proper type (72) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onreset&quot; with the proper type (73) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onresize&quot; with the proper type (74) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onscroll&quot; with the proper type (75) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onseeked&quot; with the proper type (76) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onseeking&quot; with the proper type (77) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onselect&quot; with the proper type (78) 
+FAIL HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onshow&quot; with the proper type (79) assert_inherits: property &quot;onshow&quot; not found in prototype chain
+FAIL HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onsort&quot; with the proper type (80) assert_inherits: property &quot;onsort&quot; not found in prototype chain
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onstalled&quot; with the proper type (81) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onsubmit&quot; with the proper type (82) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onsuspend&quot; with the proper type (83) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;ontimeupdate&quot; with the proper type (84) 
+FAIL HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;ontoggle&quot; with the proper type (85) assert_inherits: property &quot;ontoggle&quot; not found in prototype chain
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onvolumechange&quot; with the proper type (86) 
+PASS HTMLElement interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;onwaiting&quot; with the proper type (87) 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;namespaceURI&quot; with the proper type (0) 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;prefix&quot; with the proper type (1) 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;localName&quot; with the proper type (2) 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;tagName&quot; with the proper type (3) 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;id&quot; with the proper type (4) 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;className&quot; with the proper type (5) 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;classList&quot; with the proper type (6) 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;hasAttributes&quot; with the proper type (7) 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;attributes&quot; with the proper type (8) 
+FAIL Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;getAttributeNames&quot; with the proper type (9) assert_inherits: property &quot;getAttributeNames&quot; not found in prototype chain
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;getAttribute&quot; with the proper type (10) 
+FAIL Element interface: calling getAttribute(DOMString) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;getAttributeNS&quot; with the proper type (11) 
+FAIL Element interface: calling getAttributeNS(DOMString,DOMString) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;setAttribute&quot; with the proper type (12) 
+FAIL Element interface: calling setAttribute(DOMString,DOMString) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;setAttributeNS&quot; with the proper type (13) 
+FAIL Element interface: calling setAttributeNS(DOMString,DOMString,DOMString) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;removeAttribute&quot; with the proper type (14) 
+FAIL Element interface: calling removeAttribute(DOMString) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;removeAttributeNS&quot; with the proper type (15) 
+PASS Element interface: calling removeAttributeNS(DOMString,DOMString) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;hasAttribute&quot; with the proper type (16) 
+PASS Element interface: calling hasAttribute(DOMString) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;hasAttributeNS&quot; with the proper type (17) 
+FAIL Element interface: calling hasAttributeNS(DOMString,DOMString) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;getAttributeNode&quot; with the proper type (18) 
+FAIL Element interface: calling getAttributeNode(DOMString) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;getAttributeNodeNS&quot; with the proper type (19) 
+FAIL Element interface: calling getAttributeNodeNS(DOMString,DOMString) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;setAttributeNode&quot; with the proper type (20) 
+PASS Element interface: calling setAttributeNode(Attr) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;setAttributeNodeNS&quot; with the proper type (21) 
+PASS Element interface: calling setAttributeNodeNS(Attr) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;removeAttributeNode&quot; with the proper type (22) 
+PASS Element interface: calling removeAttributeNode(Attr) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;closest&quot; with the proper type (23) 
+PASS Element interface: calling closest(DOMString) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;matches&quot; with the proper type (24) 
+PASS Element interface: calling matches(DOMString) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;getElementsByTagName&quot; with the proper type (25) 
+FAIL Element interface: calling getElementsByTagName(DOMString) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;getElementsByTagNameNS&quot; with the proper type (26) 
+FAIL Element interface: calling getElementsByTagNameNS(DOMString,DOMString) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;getElementsByClassName&quot; with the proper type (27) 
+FAIL Element interface: calling getElementsByClassName(DOMString) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;children&quot; with the proper type (28) 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;firstElementChild&quot; with the proper type (29) 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;lastElementChild&quot; with the proper type (30) 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;childElementCount&quot; with the proper type (31) 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;prepend&quot; with the proper type (32) 
+PASS Element interface: calling prepend([object Object],[object Object]) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;append&quot; with the proper type (33) 
+PASS Element interface: calling append([object Object],[object Object]) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError 
+FAIL Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;query&quot; with the proper type (34) assert_inherits: property &quot;query&quot; not found in prototype chain
+FAIL Element interface: calling query(DOMString) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError assert_inherits: property &quot;query&quot; not found in prototype chain
+FAIL Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;queryAll&quot; with the proper type (35) assert_inherits: property &quot;queryAll&quot; not found in prototype chain
+FAIL Element interface: calling queryAll(DOMString) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError assert_inherits: property &quot;queryAll&quot; not found in prototype chain
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;querySelector&quot; with the proper type (36) 
+PASS Element interface: calling querySelector(DOMString) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;querySelectorAll&quot; with the proper type (37) 
+PASS Element interface: calling querySelectorAll(DOMString) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;previousElementSibling&quot; with the proper type (38) 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;nextElementSibling&quot; with the proper type (39) 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;before&quot; with the proper type (40) 
+PASS Element interface: calling before([object Object],[object Object]) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;after&quot; with the proper type (41) 
+PASS Element interface: calling after([object Object],[object Object]) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;replaceWith&quot; with the proper type (42) 
+PASS Element interface: calling replaceWith([object Object],[object Object]) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError 
+PASS Element interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;remove&quot; with the proper type (43) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;ELEMENT_NODE&quot; with the proper type (0) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;ATTRIBUTE_NODE&quot; with the proper type (1) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;TEXT_NODE&quot; with the proper type (2) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;CDATA_SECTION_NODE&quot; with the proper type (3) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;ENTITY_REFERENCE_NODE&quot; with the proper type (4) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;ENTITY_NODE&quot; with the proper type (5) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;PROCESSING_INSTRUCTION_NODE&quot; with the proper type (6) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;COMMENT_NODE&quot; with the proper type (7) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;DOCUMENT_NODE&quot; with the proper type (8) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;DOCUMENT_TYPE_NODE&quot; with the proper type (9) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;DOCUMENT_FRAGMENT_NODE&quot; with the proper type (10) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;NOTATION_NODE&quot; with the proper type (11) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;nodeType&quot; with the proper type (12) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;nodeName&quot; with the proper type (13) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;baseURI&quot; with the proper type (14) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;ownerDocument&quot; with the proper type (15) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;parentNode&quot; with the proper type (16) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;parentElement&quot; with the proper type (17) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;hasChildNodes&quot; with the proper type (18) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;childNodes&quot; with the proper type (19) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;firstChild&quot; with the proper type (20) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;lastChild&quot; with the proper type (21) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;previousSibling&quot; with the proper type (22) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;nextSibling&quot; with the proper type (23) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;nodeValue&quot; with the proper type (24) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;textContent&quot; with the proper type (25) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;normalize&quot; with the proper type (26) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;cloneNode&quot; with the proper type (27) 
+PASS Node interface: calling cloneNode(boolean) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;isEqualNode&quot; with the proper type (28) 
+FAIL Node interface: calling isEqualNode(Node) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;DOCUMENT_POSITION_DISCONNECTED&quot; with the proper type (29) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;DOCUMENT_POSITION_PRECEDING&quot; with the proper type (30) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;DOCUMENT_POSITION_FOLLOWING&quot; with the proper type (31) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;DOCUMENT_POSITION_CONTAINS&quot; with the proper type (32) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;DOCUMENT_POSITION_CONTAINED_BY&quot; with the proper type (33) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC&quot; with the proper type (34) 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;compareDocumentPosition&quot; with the proper type (35) 
+FAIL Node interface: calling compareDocumentPosition(Node) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;contains&quot; with the proper type (36) 
+FAIL Node interface: calling contains(Node) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;lookupPrefix&quot; with the proper type (37) 
+FAIL Node interface: calling lookupPrefix(DOMString) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;lookupNamespaceURI&quot; with the proper type (38) 
+FAIL Node interface: calling lookupNamespaceURI(DOMString) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;isDefaultNamespace&quot; with the proper type (39) 
+FAIL Node interface: calling isDefaultNamespace(DOMString) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;insertBefore&quot; with the proper type (40) 
+FAIL Node interface: calling insertBefore(Node,Node) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError assert_throws: Called with 1 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;appendChild&quot; with the proper type (41) 
+PASS Node interface: calling appendChild(Node) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;replaceChild&quot; with the proper type (42) 
+PASS Node interface: calling replaceChild(Node,Node) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError 
+PASS Node interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;removeChild&quot; with the proper type (43) 
+PASS Node interface: calling removeChild(Node) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError 
+PASS EventTarget interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;addEventListener&quot; with the proper type (0) 
+FAIL EventTarget interface: calling addEventListener(DOMString,EventListener,boolean) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS EventTarget interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;removeEventListener&quot; with the proper type (1) 
+FAIL EventTarget interface: calling removeEventListener(DOMString,EventListener,boolean) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS EventTarget interface: document.createElement(&quot;noscript&quot;) must inherit property &quot;dispatchEvent&quot; with the proper type (2) 
+PASS EventTarget interface: calling dispatchEvent(Event) on document.createElement(&quot;noscript&quot;) with too few arguments must throw TypeError 
+PASS HTMLUnknownElement interface: existence and properties of interface object 
+PASS HTMLUnknownElement interface object length 
+PASS HTMLUnknownElement interface object name 
+PASS HTMLUnknownElement interface: existence and properties of interface prototype object 
+PASS HTMLUnknownElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLUnknownElement must be primary interface of document.createElement(&quot;bgsound&quot;) 
+PASS Stringification of document.createElement(&quot;bgsound&quot;) 
+PASS HTMLHtmlElement interface: existence and properties of interface object 
+PASS HTMLHtmlElement interface object length 
+PASS HTMLHtmlElement interface object name 
+PASS HTMLHtmlElement interface: existence and properties of interface prototype object 
+PASS HTMLHtmlElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLHtmlElement interface: attribute version 
+PASS HTMLHtmlElement must be primary interface of document.createElement(&quot;html&quot;) 
+PASS Stringification of document.createElement(&quot;html&quot;) 
+PASS HTMLHtmlElement interface: document.createElement(&quot;html&quot;) must inherit property &quot;version&quot; with the proper type (0) 
+PASS HTMLHeadElement interface: existence and properties of interface object 
+PASS HTMLHeadElement interface object length 
+PASS HTMLHeadElement interface object name 
+PASS HTMLHeadElement interface: existence and properties of interface prototype object 
+PASS HTMLHeadElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLHeadElement must be primary interface of document.createElement(&quot;head&quot;) 
+PASS Stringification of document.createElement(&quot;head&quot;) 
+PASS HTMLTitleElement interface: existence and properties of interface object 
+PASS HTMLTitleElement interface object length 
+PASS HTMLTitleElement interface object name 
+PASS HTMLTitleElement interface: existence and properties of interface prototype object 
+PASS HTMLTitleElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLTitleElement interface: attribute text 
+PASS HTMLTitleElement must be primary interface of document.createElement(&quot;title&quot;) 
+PASS Stringification of document.createElement(&quot;title&quot;) 
+PASS HTMLTitleElement interface: document.createElement(&quot;title&quot;) must inherit property &quot;text&quot; with the proper type (0) 
+PASS HTMLBaseElement interface: existence and properties of interface object 
+PASS HTMLBaseElement interface object length 
+PASS HTMLBaseElement interface object name 
+PASS HTMLBaseElement interface: existence and properties of interface prototype object 
+PASS HTMLBaseElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLBaseElement interface: attribute href 
+PASS HTMLBaseElement interface: attribute target 
+PASS HTMLBaseElement must be primary interface of document.createElement(&quot;base&quot;) 
+PASS Stringification of document.createElement(&quot;base&quot;) 
+PASS HTMLBaseElement interface: document.createElement(&quot;base&quot;) must inherit property &quot;href&quot; with the proper type (0) 
+PASS HTMLBaseElement interface: document.createElement(&quot;base&quot;) must inherit property &quot;target&quot; with the proper type (1) 
+PASS HTMLLinkElement interface: existence and properties of interface object 
+PASS HTMLLinkElement interface object length 
+PASS HTMLLinkElement interface object name 
+PASS HTMLLinkElement interface: existence and properties of interface prototype object 
+PASS HTMLLinkElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLLinkElement interface: attribute href 
+PASS HTMLLinkElement interface: attribute crossOrigin 
+PASS HTMLLinkElement interface: attribute rel 
+PASS HTMLLinkElement interface: attribute relList 
+PASS HTMLLinkElement interface: attribute media 
+PASS HTMLLinkElement interface: attribute hreflang 
+PASS HTMLLinkElement interface: attribute type 
+PASS HTMLLinkElement interface: attribute sizes 
+PASS HTMLLinkElement interface: attribute charset 
+PASS HTMLLinkElement interface: attribute rev 
+PASS HTMLLinkElement interface: attribute target 
+PASS HTMLLinkElement must be primary interface of document.createElement(&quot;link&quot;) 
+PASS Stringification of document.createElement(&quot;link&quot;) 
+PASS HTMLLinkElement interface: document.createElement(&quot;link&quot;) must inherit property &quot;href&quot; with the proper type (0) 
+PASS HTMLLinkElement interface: document.createElement(&quot;link&quot;) must inherit property &quot;crossOrigin&quot; with the proper type (1) 
+PASS HTMLLinkElement interface: document.createElement(&quot;link&quot;) must inherit property &quot;rel&quot; with the proper type (2) 
+PASS HTMLLinkElement interface: document.createElement(&quot;link&quot;) must inherit property &quot;relList&quot; with the proper type (3) 
+PASS HTMLLinkElement interface: document.createElement(&quot;link&quot;) must inherit property &quot;media&quot; with the proper type (4) 
+PASS HTMLLinkElement interface: document.createElement(&quot;link&quot;) must inherit property &quot;hreflang&quot; with the proper type (5) 
+PASS HTMLLinkElement interface: document.createElement(&quot;link&quot;) must inherit property &quot;type&quot; with the proper type (6) 
+PASS HTMLLinkElement interface: document.createElement(&quot;link&quot;) must inherit property &quot;sizes&quot; with the proper type (7) 
+PASS HTMLLinkElement interface: document.createElement(&quot;link&quot;) must inherit property &quot;charset&quot; with the proper type (8) 
+PASS HTMLLinkElement interface: document.createElement(&quot;link&quot;) must inherit property &quot;rev&quot; with the proper type (9) 
+PASS HTMLLinkElement interface: document.createElement(&quot;link&quot;) must inherit property &quot;target&quot; with the proper type (10) 
+PASS HTMLLinkElement interface: document.createElement(&quot;link&quot;) must inherit property &quot;sheet&quot; with the proper type (11) 
+PASS HTMLMetaElement interface: existence and properties of interface object 
+PASS HTMLMetaElement interface object length 
+PASS HTMLMetaElement interface object name 
+PASS HTMLMetaElement interface: existence and properties of interface prototype object 
+PASS HTMLMetaElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLMetaElement interface: attribute name 
+PASS HTMLMetaElement interface: attribute httpEquiv 
+PASS HTMLMetaElement interface: attribute content 
+PASS HTMLMetaElement interface: attribute scheme 
+PASS HTMLMetaElement must be primary interface of document.createElement(&quot;meta&quot;) 
+PASS Stringification of document.createElement(&quot;meta&quot;) 
+PASS HTMLMetaElement interface: document.createElement(&quot;meta&quot;) must inherit property &quot;name&quot; with the proper type (0) 
+PASS HTMLMetaElement interface: document.createElement(&quot;meta&quot;) must inherit property &quot;httpEquiv&quot; with the proper type (1) 
+PASS HTMLMetaElement interface: document.createElement(&quot;meta&quot;) must inherit property &quot;content&quot; with the proper type (2) 
+PASS HTMLMetaElement interface: document.createElement(&quot;meta&quot;) must inherit property &quot;scheme&quot; with the proper type (3) 
+PASS HTMLStyleElement interface: existence and properties of interface object 
+PASS HTMLStyleElement interface object length 
+PASS HTMLStyleElement interface object name 
+PASS HTMLStyleElement interface: existence and properties of interface prototype object 
+PASS HTMLStyleElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLStyleElement interface: attribute media 
+PASS HTMLStyleElement interface: attribute type 
+FAIL HTMLStyleElement interface: attribute scoped assert_true: The prototype object must have a property &quot;scoped&quot; expected true got false
+PASS HTMLStyleElement must be primary interface of document.createElement(&quot;style&quot;) 
+PASS Stringification of document.createElement(&quot;style&quot;) 
+PASS HTMLStyleElement interface: document.createElement(&quot;style&quot;) must inherit property &quot;media&quot; with the proper type (0) 
+PASS HTMLStyleElement interface: document.createElement(&quot;style&quot;) must inherit property &quot;type&quot; with the proper type (1) 
+FAIL HTMLStyleElement interface: document.createElement(&quot;style&quot;) must inherit property &quot;scoped&quot; with the proper type (2) assert_inherits: property &quot;scoped&quot; not found in prototype chain
+PASS HTMLStyleElement interface: document.createElement(&quot;style&quot;) must inherit property &quot;sheet&quot; with the proper type (3) 
+PASS HTMLBodyElement interface: existence and properties of interface object 
+PASS HTMLBodyElement interface object length 
+PASS HTMLBodyElement interface object name 
+PASS HTMLBodyElement interface: existence and properties of interface prototype object 
+PASS HTMLBodyElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLBodyElement interface: attribute text 
+PASS HTMLBodyElement interface: attribute link 
+PASS HTMLBodyElement interface: attribute vLink 
+PASS HTMLBodyElement interface: attribute aLink 
+PASS HTMLBodyElement interface: attribute bgColor 
+PASS HTMLBodyElement interface: attribute background 
+FAIL HTMLBodyElement interface: attribute onafterprint assert_true: The prototype object must have a property &quot;onafterprint&quot; expected true got false
+FAIL HTMLBodyElement interface: attribute onbeforeprint assert_true: The prototype object must have a property &quot;onbeforeprint&quot; expected true got false
+PASS HTMLBodyElement interface: attribute onbeforeunload 
+PASS HTMLBodyElement interface: attribute onhashchange 
+FAIL HTMLBodyElement interface: attribute onlanguagechange assert_true: The prototype object must have a property &quot;onlanguagechange&quot; expected true got false
+PASS HTMLBodyElement interface: attribute onmessage 
+PASS HTMLBodyElement interface: attribute onoffline 
+PASS HTMLBodyElement interface: attribute ononline 
+PASS HTMLBodyElement interface: attribute onpagehide 
+PASS HTMLBodyElement interface: attribute onpageshow 
+PASS HTMLBodyElement interface: attribute onpopstate 
+PASS HTMLBodyElement interface: attribute onstorage 
+PASS HTMLBodyElement interface: attribute onunload 
+PASS HTMLBodyElement must be primary interface of document.createElement(&quot;body&quot;) 
+PASS Stringification of document.createElement(&quot;body&quot;) 
+PASS HTMLBodyElement interface: document.createElement(&quot;body&quot;) must inherit property &quot;text&quot; with the proper type (0) 
+PASS HTMLBodyElement interface: document.createElement(&quot;body&quot;) must inherit property &quot;link&quot; with the proper type (1) 
+PASS HTMLBodyElement interface: document.createElement(&quot;body&quot;) must inherit property &quot;vLink&quot; with the proper type (2) 
+PASS HTMLBodyElement interface: document.createElement(&quot;body&quot;) must inherit property &quot;aLink&quot; with the proper type (3) 
+PASS HTMLBodyElement interface: document.createElement(&quot;body&quot;) must inherit property &quot;bgColor&quot; with the proper type (4) 
+PASS HTMLBodyElement interface: document.createElement(&quot;body&quot;) must inherit property &quot;background&quot; with the proper type (5) 
+FAIL HTMLBodyElement interface: document.createElement(&quot;body&quot;) must inherit property &quot;onafterprint&quot; with the proper type (6) assert_inherits: property &quot;onafterprint&quot; not found in prototype chain
+FAIL HTMLBodyElement interface: document.createElement(&quot;body&quot;) must inherit property &quot;onbeforeprint&quot; with the proper type (7) assert_inherits: property &quot;onbeforeprint&quot; not found in prototype chain
+PASS HTMLBodyElement interface: document.createElement(&quot;body&quot;) must inherit property &quot;onbeforeunload&quot; with the proper type (8) 
+PASS HTMLBodyElement interface: document.createElement(&quot;body&quot;) must inherit property &quot;onhashchange&quot; with the proper type (9) 
+FAIL HTMLBodyElement interface: document.createElement(&quot;body&quot;) must inherit property &quot;onlanguagechange&quot; with the proper type (10) assert_inherits: property &quot;onlanguagechange&quot; not found in prototype chain
+PASS HTMLBodyElement interface: document.createElement(&quot;body&quot;) must inherit property &quot;onmessage&quot; with the proper type (11) 
+PASS HTMLBodyElement interface: document.createElement(&quot;body&quot;) must inherit property &quot;onoffline&quot; with the proper type (12) 
+PASS HTMLBodyElement interface: document.createElement(&quot;body&quot;) must inherit property &quot;ononline&quot; with the proper type (13) 
+PASS HTMLBodyElement interface: document.createElement(&quot;body&quot;) must inherit property &quot;onpagehide&quot; with the proper type (14) 
+PASS HTMLBodyElement interface: document.createElement(&quot;body&quot;) must inherit property &quot;onpageshow&quot; with the proper type (15) 
+PASS HTMLBodyElement interface: document.createElement(&quot;body&quot;) must inherit property &quot;onpopstate&quot; with the proper type (16) 
+PASS HTMLBodyElement interface: document.createElement(&quot;body&quot;) must inherit property &quot;onstorage&quot; with the proper type (17) 
+PASS HTMLBodyElement interface: document.createElement(&quot;body&quot;) must inherit property &quot;onunload&quot; with the proper type (18) 
+PASS HTMLHeadingElement interface: existence and properties of interface object 
+PASS HTMLHeadingElement interface object length 
+PASS HTMLHeadingElement interface object name 
+PASS HTMLHeadingElement interface: existence and properties of interface prototype object 
+PASS HTMLHeadingElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLHeadingElement interface: attribute align 
+PASS HTMLHeadingElement must be primary interface of document.createElement(&quot;h1&quot;) 
+PASS Stringification of document.createElement(&quot;h1&quot;) 
+PASS HTMLHeadingElement interface: document.createElement(&quot;h1&quot;) must inherit property &quot;align&quot; with the proper type (0) 
+PASS HTMLParagraphElement interface: existence and properties of interface object 
+PASS HTMLParagraphElement interface object length 
+PASS HTMLParagraphElement interface object name 
+PASS HTMLParagraphElement interface: existence and properties of interface prototype object 
+PASS HTMLParagraphElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLParagraphElement interface: attribute align 
+PASS HTMLParagraphElement must be primary interface of document.createElement(&quot;p&quot;) 
+PASS Stringification of document.createElement(&quot;p&quot;) 
+PASS HTMLParagraphElement interface: document.createElement(&quot;p&quot;) must inherit property &quot;align&quot; with the proper type (0) 
+PASS HTMLHRElement interface: existence and properties of interface object 
+PASS HTMLHRElement interface object length 
+PASS HTMLHRElement interface object name 
+PASS HTMLHRElement interface: existence and properties of interface prototype object 
+PASS HTMLHRElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLHRElement interface: attribute align 
+FAIL HTMLHRElement interface: attribute color assert_true: The prototype object must have a property &quot;color&quot; expected true got false
+PASS HTMLHRElement interface: attribute noShade 
+PASS HTMLHRElement interface: attribute size 
+PASS HTMLHRElement interface: attribute width 
+PASS HTMLHRElement must be primary interface of document.createElement(&quot;hr&quot;) 
+PASS Stringification of document.createElement(&quot;hr&quot;) 
+PASS HTMLHRElement interface: document.createElement(&quot;hr&quot;) must inherit property &quot;align&quot; with the proper type (0) 
+FAIL HTMLHRElement interface: document.createElement(&quot;hr&quot;) must inherit property &quot;color&quot; with the proper type (1) assert_inherits: property &quot;color&quot; not found in prototype chain
+PASS HTMLHRElement interface: document.createElement(&quot;hr&quot;) must inherit property &quot;noShade&quot; with the proper type (2) 
+PASS HTMLHRElement interface: document.createElement(&quot;hr&quot;) must inherit property &quot;size&quot; with the proper type (3) 
+PASS HTMLHRElement interface: document.createElement(&quot;hr&quot;) must inherit property &quot;width&quot; with the proper type (4) 
+PASS HTMLPreElement interface: existence and properties of interface object 
+PASS HTMLPreElement interface object length 
+PASS HTMLPreElement interface object name 
+PASS HTMLPreElement interface: existence and properties of interface prototype object 
+PASS HTMLPreElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLPreElement interface: attribute width 
+PASS HTMLPreElement must be primary interface of document.createElement(&quot;pre&quot;) 
+PASS Stringification of document.createElement(&quot;pre&quot;) 
+PASS HTMLPreElement interface: document.createElement(&quot;pre&quot;) must inherit property &quot;width&quot; with the proper type (0) 
+PASS HTMLPreElement must be primary interface of document.createElement(&quot;listing&quot;) 
+PASS Stringification of document.createElement(&quot;listing&quot;) 
+PASS HTMLPreElement interface: document.createElement(&quot;listing&quot;) must inherit property &quot;width&quot; with the proper type (0) 
+PASS HTMLPreElement must be primary interface of document.createElement(&quot;xmp&quot;) 
+PASS Stringification of document.createElement(&quot;xmp&quot;) 
+PASS HTMLPreElement interface: document.createElement(&quot;xmp&quot;) must inherit property &quot;width&quot; with the proper type (0) 
+PASS HTMLQuoteElement interface: existence and properties of interface object 
+PASS HTMLQuoteElement interface object length 
+PASS HTMLQuoteElement interface object name 
+PASS HTMLQuoteElement interface: existence and properties of interface prototype object 
+PASS HTMLQuoteElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLQuoteElement interface: attribute cite 
+PASS HTMLQuoteElement must be primary interface of document.createElement(&quot;blockquote&quot;) 
+PASS Stringification of document.createElement(&quot;blockquote&quot;) 
+PASS HTMLQuoteElement interface: document.createElement(&quot;blockquote&quot;) must inherit property &quot;cite&quot; with the proper type (0) 
+PASS HTMLQuoteElement must be primary interface of document.createElement(&quot;q&quot;) 
+PASS Stringification of document.createElement(&quot;q&quot;) 
+PASS HTMLQuoteElement interface: document.createElement(&quot;q&quot;) must inherit property &quot;cite&quot; with the proper type (0) 
+PASS HTMLOListElement interface: existence and properties of interface object 
+PASS HTMLOListElement interface object length 
+PASS HTMLOListElement interface object name 
+PASS HTMLOListElement interface: existence and properties of interface prototype object 
+PASS HTMLOListElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLOListElement interface: attribute reversed 
+PASS HTMLOListElement interface: attribute start 
+PASS HTMLOListElement interface: attribute type 
+PASS HTMLOListElement interface: attribute compact 
+PASS HTMLUListElement interface: existence and properties of interface object 
+PASS HTMLUListElement interface object length 
+PASS HTMLUListElement interface object name 
+PASS HTMLUListElement interface: existence and properties of interface prototype object 
+PASS HTMLUListElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLUListElement interface: attribute compact 
+PASS HTMLUListElement interface: attribute type 
+PASS HTMLLIElement interface: existence and properties of interface object 
+PASS HTMLLIElement interface object length 
+PASS HTMLLIElement interface object name 
+PASS HTMLLIElement interface: existence and properties of interface prototype object 
+PASS HTMLLIElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLLIElement interface: attribute value 
+PASS HTMLLIElement interface: attribute type 
+PASS HTMLLIElement must be primary interface of document.createElement(&quot;li&quot;) 
+PASS Stringification of document.createElement(&quot;li&quot;) 
+PASS HTMLLIElement interface: document.createElement(&quot;li&quot;) must inherit property &quot;value&quot; with the proper type (0) 
+PASS HTMLLIElement interface: document.createElement(&quot;li&quot;) must inherit property &quot;type&quot; with the proper type (1) 
+PASS HTMLDListElement interface: existence and properties of interface object 
+PASS HTMLDListElement interface object length 
+PASS HTMLDListElement interface object name 
+PASS HTMLDListElement interface: existence and properties of interface prototype object 
+PASS HTMLDListElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLDListElement interface: attribute compact 
+PASS HTMLDivElement interface: existence and properties of interface object 
+PASS HTMLDivElement interface object length 
+PASS HTMLDivElement interface object name 
+PASS HTMLDivElement interface: existence and properties of interface prototype object 
+PASS HTMLDivElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLDivElement interface: attribute align 
+PASS HTMLDivElement must be primary interface of document.createElement(&quot;div&quot;) 
+PASS Stringification of document.createElement(&quot;div&quot;) 
+PASS HTMLDivElement interface: document.createElement(&quot;div&quot;) must inherit property &quot;align&quot; with the proper type (0) 
+PASS HTMLAnchorElement interface: existence and properties of interface object 
+PASS HTMLAnchorElement interface object length 
+PASS HTMLAnchorElement interface object name 
+PASS HTMLAnchorElement interface: existence and properties of interface prototype object 
+PASS HTMLAnchorElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLAnchorElement interface: attribute target 
+PASS HTMLAnchorElement interface: attribute download 
+PASS HTMLAnchorElement interface: attribute ping 
+PASS HTMLAnchorElement interface: attribute rel 
+PASS HTMLAnchorElement interface: attribute relList 
+PASS HTMLAnchorElement interface: attribute hreflang 
+PASS HTMLAnchorElement interface: attribute type 
+PASS HTMLAnchorElement interface: attribute text 
+PASS HTMLAnchorElement interface: attribute coords 
+PASS HTMLAnchorElement interface: attribute charset 
+PASS HTMLAnchorElement interface: attribute name 
+PASS HTMLAnchorElement interface: attribute rev 
+PASS HTMLAnchorElement interface: attribute shape 
+PASS HTMLAnchorElement interface: attribute href 
+PASS HTMLAnchorElement interface: attribute origin 
+PASS HTMLAnchorElement interface: attribute protocol 
+PASS HTMLAnchorElement interface: attribute username 
+PASS HTMLAnchorElement interface: attribute password 
+PASS HTMLAnchorElement interface: attribute host 
+PASS HTMLAnchorElement interface: attribute hostname 
+PASS HTMLAnchorElement interface: attribute port 
+PASS HTMLAnchorElement interface: attribute pathname 
+PASS HTMLAnchorElement interface: attribute search 
+PASS HTMLAnchorElement interface: attribute hash 
+PASS HTMLAnchorElement must be primary interface of document.createElement(&quot;a&quot;) 
+PASS Stringification of document.createElement(&quot;a&quot;) 
+PASS HTMLAnchorElement interface: document.createElement(&quot;a&quot;) must inherit property &quot;target&quot; with the proper type (0) 
+PASS HTMLAnchorElement interface: document.createElement(&quot;a&quot;) must inherit property &quot;download&quot; with the proper type (1) 
+PASS HTMLAnchorElement interface: document.createElement(&quot;a&quot;) must inherit property &quot;ping&quot; with the proper type (2) 
+PASS HTMLAnchorElement interface: document.createElement(&quot;a&quot;) must inherit property &quot;rel&quot; with the proper type (3) 
+PASS HTMLAnchorElement interface: document.createElement(&quot;a&quot;) must inherit property &quot;relList&quot; with the proper type (4) 
+PASS HTMLAnchorElement interface: document.createElement(&quot;a&quot;) must inherit property &quot;hreflang&quot; with the proper type (5) 
+PASS HTMLAnchorElement interface: document.createElement(&quot;a&quot;) must inherit property &quot;type&quot; with the proper type (6) 
+PASS HTMLAnchorElement interface: document.createElement(&quot;a&quot;) must inherit property &quot;text&quot; with the proper type (7) 
+PASS HTMLAnchorElement interface: document.createElement(&quot;a&quot;) must inherit property &quot;coords&quot; with the proper type (8) 
+PASS HTMLAnchorElement interface: document.createElement(&quot;a&quot;) must inherit property &quot;charset&quot; with the proper type (9) 
+PASS HTMLAnchorElement interface: document.createElement(&quot;a&quot;) must inherit property &quot;name&quot; with the proper type (10) 
+PASS HTMLAnchorElement interface: document.createElement(&quot;a&quot;) must inherit property &quot;rev&quot; with the proper type (11) 
+PASS HTMLAnchorElement interface: document.createElement(&quot;a&quot;) must inherit property &quot;shape&quot; with the proper type (12) 
+PASS HTMLAnchorElement interface: document.createElement(&quot;a&quot;) must inherit property &quot;href&quot; with the proper type (13) 
+PASS HTMLAnchorElement interface: document.createElement(&quot;a&quot;) must inherit property &quot;origin&quot; with the proper type (14) 
+PASS HTMLAnchorElement interface: document.createElement(&quot;a&quot;) must inherit property &quot;protocol&quot; with the proper type (15) 
+PASS HTMLAnchorElement interface: document.createElement(&quot;a&quot;) must inherit property &quot;username&quot; with the proper type (16) 
+PASS HTMLAnchorElement interface: document.createElement(&quot;a&quot;) must inherit property &quot;password&quot; with the proper type (17) 
+PASS HTMLAnchorElement interface: document.createElement(&quot;a&quot;) must inherit property &quot;host&quot; with the proper type (18) 
+PASS HTMLAnchorElement interface: document.createElement(&quot;a&quot;) must inherit property &quot;hostname&quot; with the proper type (19) 
+PASS HTMLAnchorElement interface: document.createElement(&quot;a&quot;) must inherit property &quot;port&quot; with the proper type (20) 
+PASS HTMLAnchorElement interface: document.createElement(&quot;a&quot;) must inherit property &quot;pathname&quot; with the proper type (21) 
+PASS HTMLAnchorElement interface: document.createElement(&quot;a&quot;) must inherit property &quot;search&quot; with the proper type (22) 
+PASS HTMLAnchorElement interface: document.createElement(&quot;a&quot;) must inherit property &quot;hash&quot; with the proper type (23) 
+PASS HTMLDataElement interface: existence and properties of interface object 
+PASS HTMLDataElement interface object length 
+PASS HTMLDataElement interface object name 
+PASS HTMLDataElement interface: existence and properties of interface prototype object 
+PASS HTMLDataElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLDataElement interface: attribute value 
+PASS HTMLDataElement must be primary interface of document.createElement(&quot;data&quot;) 
+PASS Stringification of document.createElement(&quot;data&quot;) 
+PASS HTMLDataElement interface: document.createElement(&quot;data&quot;) must inherit property &quot;value&quot; with the proper type (0) 
+PASS HTMLTimeElement interface: existence and properties of interface object 
+PASS HTMLTimeElement interface object length 
+PASS HTMLTimeElement interface object name 
+PASS HTMLTimeElement interface: existence and properties of interface prototype object 
+PASS HTMLTimeElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLTimeElement interface: attribute dateTime 
+PASS HTMLTimeElement must be primary interface of document.createElement(&quot;time&quot;) 
+PASS Stringification of document.createElement(&quot;time&quot;) 
+PASS HTMLTimeElement interface: document.createElement(&quot;time&quot;) must inherit property &quot;dateTime&quot; with the proper type (0) 
+PASS HTMLSpanElement interface: existence and properties of interface object 
+PASS HTMLSpanElement interface object length 
+PASS HTMLSpanElement interface object name 
+PASS HTMLSpanElement interface: existence and properties of interface prototype object 
+PASS HTMLSpanElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLSpanElement must be primary interface of document.createElement(&quot;span&quot;) 
+PASS Stringification of document.createElement(&quot;span&quot;) 
+PASS HTMLBRElement interface: existence and properties of interface object 
+PASS HTMLBRElement interface object length 
+PASS HTMLBRElement interface object name 
+PASS HTMLBRElement interface: existence and properties of interface prototype object 
+PASS HTMLBRElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLBRElement interface: attribute clear 
+PASS HTMLBRElement must be primary interface of document.createElement(&quot;br&quot;) 
+PASS Stringification of document.createElement(&quot;br&quot;) 
+PASS HTMLBRElement interface: document.createElement(&quot;br&quot;) must inherit property &quot;clear&quot; with the proper type (0) 
+PASS HTMLModElement interface: existence and properties of interface object 
+PASS HTMLModElement interface object length 
+PASS HTMLModElement interface object name 
+PASS HTMLModElement interface: existence and properties of interface prototype object 
+PASS HTMLModElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLModElement interface: attribute cite 
+PASS HTMLModElement interface: attribute dateTime 
+PASS HTMLModElement must be primary interface of document.createElement(&quot;ins&quot;) 
+PASS Stringification of document.createElement(&quot;ins&quot;) 
+PASS HTMLModElement interface: document.createElement(&quot;ins&quot;) must inherit property &quot;cite&quot; with the proper type (0) 
+PASS HTMLModElement interface: document.createElement(&quot;ins&quot;) must inherit property &quot;dateTime&quot; with the proper type (1) 
+PASS HTMLModElement must be primary interface of document.createElement(&quot;del&quot;) 
+PASS Stringification of document.createElement(&quot;del&quot;) 
+PASS HTMLModElement interface: document.createElement(&quot;del&quot;) must inherit property &quot;cite&quot; with the proper type (0) 
+PASS HTMLModElement interface: document.createElement(&quot;del&quot;) must inherit property &quot;dateTime&quot; with the proper type (1) 
+PASS HTMLPictureElement interface: existence and properties of interface object 
+PASS HTMLPictureElement interface object length 
+PASS HTMLPictureElement interface object name 
+PASS HTMLPictureElement interface: existence and properties of interface prototype object 
+PASS HTMLPictureElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLPictureElement must be primary interface of document.createElement(&quot;picture&quot;) 
+PASS Stringification of document.createElement(&quot;picture&quot;) 
+PASS HTMLImageElement interface: existence and properties of interface object 
+PASS HTMLImageElement interface object length 
+PASS HTMLImageElement interface object name 
+PASS HTMLImageElement interface: existence and properties of interface prototype object 
+PASS HTMLImageElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLImageElement interface: attribute alt 
+PASS HTMLImageElement interface: attribute src 
+PASS HTMLImageElement interface: attribute srcset 
+PASS HTMLImageElement interface: attribute sizes 
+PASS HTMLImageElement interface: attribute crossOrigin 
+PASS HTMLImageElement interface: attribute useMap 
+PASS HTMLImageElement interface: attribute isMap 
+PASS HTMLImageElement interface: attribute width 
+PASS HTMLImageElement interface: attribute height 
+PASS HTMLImageElement interface: attribute naturalWidth 
+PASS HTMLImageElement interface: attribute naturalHeight 
+PASS HTMLImageElement interface: attribute complete 
+PASS HTMLImageElement interface: attribute currentSrc 
+PASS HTMLImageElement interface: attribute name 
+PASS HTMLImageElement interface: attribute lowsrc 
+PASS HTMLImageElement interface: attribute align 
+PASS HTMLImageElement interface: attribute hspace 
+PASS HTMLImageElement interface: attribute vspace 
+PASS HTMLImageElement interface: attribute longDesc 
+PASS HTMLImageElement interface: attribute border 
+PASS HTMLImageElement must be primary interface of document.createElement(&quot;img&quot;) 
+PASS Stringification of document.createElement(&quot;img&quot;) 
+PASS HTMLImageElement interface: document.createElement(&quot;img&quot;) must inherit property &quot;alt&quot; with the proper type (0) 
+PASS HTMLImageElement interface: document.createElement(&quot;img&quot;) must inherit property &quot;src&quot; with the proper type (1) 
+PASS HTMLImageElement interface: document.createElement(&quot;img&quot;) must inherit property &quot;srcset&quot; with the proper type (2) 
+PASS HTMLImageElement interface: document.createElement(&quot;img&quot;) must inherit property &quot;sizes&quot; with the proper type (3) 
+PASS HTMLImageElement interface: document.createElement(&quot;img&quot;) must inherit property &quot;crossOrigin&quot; with the proper type (4) 
+PASS HTMLImageElement interface: document.createElement(&quot;img&quot;) must inherit property &quot;useMap&quot; with the proper type (5) 
+PASS HTMLImageElement interface: document.createElement(&quot;img&quot;) must inherit property &quot;isMap&quot; with the proper type (6) 
+PASS HTMLImageElement interface: document.createElement(&quot;img&quot;) must inherit property &quot;width&quot; with the proper type (7) 
+PASS HTMLImageElement interface: document.createElement(&quot;img&quot;) must inherit property &quot;height&quot; with the proper type (8) 
+PASS HTMLImageElement interface: document.createElement(&quot;img&quot;) must inherit property &quot;naturalWidth&quot; with the proper type (9) 
+PASS HTMLImageElement interface: document.createElement(&quot;img&quot;) must inherit property &quot;naturalHeight&quot; with the proper type (10) 
+PASS HTMLImageElement interface: document.createElement(&quot;img&quot;) must inherit property &quot;complete&quot; with the proper type (11) 
+PASS HTMLImageElement interface: document.createElement(&quot;img&quot;) must inherit property &quot;currentSrc&quot; with the proper type (12) 
+PASS HTMLImageElement interface: document.createElement(&quot;img&quot;) must inherit property &quot;name&quot; with the proper type (13) 
+PASS HTMLImageElement interface: document.createElement(&quot;img&quot;) must inherit property &quot;lowsrc&quot; with the proper type (14) 
+PASS HTMLImageElement interface: document.createElement(&quot;img&quot;) must inherit property &quot;align&quot; with the proper type (15) 
+PASS HTMLImageElement interface: document.createElement(&quot;img&quot;) must inherit property &quot;hspace&quot; with the proper type (16) 
+PASS HTMLImageElement interface: document.createElement(&quot;img&quot;) must inherit property &quot;vspace&quot; with the proper type (17) 
+PASS HTMLImageElement interface: document.createElement(&quot;img&quot;) must inherit property &quot;longDesc&quot; with the proper type (18) 
+PASS HTMLImageElement interface: document.createElement(&quot;img&quot;) must inherit property &quot;border&quot; with the proper type (19) 
+PASS HTMLImageElement must be primary interface of new Image() 
+PASS Stringification of new Image() 
+PASS HTMLImageElement interface: new Image() must inherit property &quot;alt&quot; with the proper type (0) 
+PASS HTMLImageElement interface: new Image() must inherit property &quot;src&quot; with the proper type (1) 
+PASS HTMLImageElement interface: new Image() must inherit property &quot;srcset&quot; with the proper type (2) 
+PASS HTMLImageElement interface: new Image() must inherit property &quot;sizes&quot; with the proper type (3) 
+PASS HTMLImageElement interface: new Image() must inherit property &quot;crossOrigin&quot; with the proper type (4) 
+PASS HTMLImageElement interface: new Image() must inherit property &quot;useMap&quot; with the proper type (5) 
+PASS HTMLImageElement interface: new Image() must inherit property &quot;isMap&quot; with the proper type (6) 
+PASS HTMLImageElement interface: new Image() must inherit property &quot;width&quot; with the proper type (7) 
+PASS HTMLImageElement interface: new Image() must inherit property &quot;height&quot; with the proper type (8) 
+PASS HTMLImageElement interface: new Image() must inherit property &quot;naturalWidth&quot; with the proper type (9) 
+PASS HTMLImageElement interface: new Image() must inherit property &quot;naturalHeight&quot; with the proper type (10) 
+PASS HTMLImageElement interface: new Image() must inherit property &quot;complete&quot; with the proper type (11) 
+PASS HTMLImageElement interface: new Image() must inherit property &quot;currentSrc&quot; with the proper type (12) 
+PASS HTMLImageElement interface: new Image() must inherit property &quot;name&quot; with the proper type (13) 
+PASS HTMLImageElement interface: new Image() must inherit property &quot;lowsrc&quot; with the proper type (14) 
+PASS HTMLImageElement interface: new Image() must inherit property &quot;align&quot; with the proper type (15) 
+PASS HTMLImageElement interface: new Image() must inherit property &quot;hspace&quot; with the proper type (16) 
+PASS HTMLImageElement interface: new Image() must inherit property &quot;vspace&quot; with the proper type (17) 
+PASS HTMLImageElement interface: new Image() must inherit property &quot;longDesc&quot; with the proper type (18) 
+PASS HTMLImageElement interface: new Image() must inherit property &quot;border&quot; with the proper type (19) 
+PASS HTMLIFrameElement interface: existence and properties of interface object 
+PASS HTMLIFrameElement interface object length 
+PASS HTMLIFrameElement interface object name 
+PASS HTMLIFrameElement interface: existence and properties of interface prototype object 
+PASS HTMLIFrameElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLIFrameElement interface: attribute src 
+PASS HTMLIFrameElement interface: attribute srcdoc 
+PASS HTMLIFrameElement interface: attribute name 
+PASS HTMLIFrameElement interface: attribute sandbox 
+FAIL HTMLIFrameElement interface: attribute seamless assert_true: The prototype object must have a property &quot;seamless&quot; expected true got false
+FAIL HTMLIFrameElement interface: attribute allowFullscreen assert_true: The prototype object must have a property &quot;allowFullscreen&quot; expected true got false
+PASS HTMLIFrameElement interface: attribute width 
+PASS HTMLIFrameElement interface: attribute height 
+PASS HTMLIFrameElement interface: attribute contentDocument 
+PASS HTMLIFrameElement interface: attribute contentWindow 
+PASS HTMLIFrameElement interface: attribute align 
+PASS HTMLIFrameElement interface: attribute scrolling 
+PASS HTMLIFrameElement interface: attribute frameBorder 
+PASS HTMLIFrameElement interface: attribute longDesc 
+PASS HTMLIFrameElement interface: attribute marginHeight 
+PASS HTMLIFrameElement interface: attribute marginWidth 
+PASS HTMLEmbedElement interface: existence and properties of interface object 
+PASS HTMLEmbedElement interface object length 
+PASS HTMLEmbedElement interface object name 
+PASS HTMLEmbedElement interface: existence and properties of interface prototype object 
+PASS HTMLEmbedElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLEmbedElement interface: attribute src 
+PASS HTMLEmbedElement interface: attribute type 
+PASS HTMLEmbedElement interface: attribute width 
+PASS HTMLEmbedElement interface: attribute height 
+PASS HTMLEmbedElement interface: operation getSVGDocument() 
+PASS HTMLEmbedElement interface: attribute align 
+PASS HTMLEmbedElement interface: attribute name 
+FAIL HTMLEmbedElement must be primary interface of document.createElement(&quot;embed&quot;) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL Stringification of document.createElement(&quot;embed&quot;) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLEmbedElement interface: document.createElement(&quot;embed&quot;) must inherit property &quot;src&quot; with the proper type (0) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLEmbedElement interface: document.createElement(&quot;embed&quot;) must inherit property &quot;type&quot; with the proper type (1) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLEmbedElement interface: document.createElement(&quot;embed&quot;) must inherit property &quot;width&quot; with the proper type (2) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLEmbedElement interface: document.createElement(&quot;embed&quot;) must inherit property &quot;height&quot; with the proper type (3) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLEmbedElement interface: document.createElement(&quot;embed&quot;) must inherit property &quot;getSVGDocument&quot; with the proper type (4) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLEmbedElement interface: document.createElement(&quot;embed&quot;) must inherit property &quot;align&quot; with the proper type (6) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLEmbedElement interface: document.createElement(&quot;embed&quot;) must inherit property &quot;name&quot; with the proper type (7) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+PASS HTMLObjectElement interface: existence and properties of interface object 
+PASS HTMLObjectElement interface object length 
+PASS HTMLObjectElement interface object name 
+PASS HTMLObjectElement interface: existence and properties of interface prototype object 
+PASS HTMLObjectElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLObjectElement interface: attribute data 
+PASS HTMLObjectElement interface: attribute type 
+FAIL HTMLObjectElement interface: attribute typeMustMatch assert_true: The prototype object must have a property &quot;typeMustMatch&quot; expected true got false
+PASS HTMLObjectElement interface: attribute name 
+PASS HTMLObjectElement interface: attribute useMap 
+PASS HTMLObjectElement interface: attribute form 
+PASS HTMLObjectElement interface: attribute width 
+PASS HTMLObjectElement interface: attribute height 
+PASS HTMLObjectElement interface: attribute contentDocument 
+FAIL HTMLObjectElement interface: attribute contentWindow assert_true: The prototype object must have a property &quot;contentWindow&quot; expected true got false
+PASS HTMLObjectElement interface: attribute willValidate 
+PASS HTMLObjectElement interface: attribute validity 
+PASS HTMLObjectElement interface: attribute validationMessage 
+PASS HTMLObjectElement interface: operation checkValidity() 
+FAIL HTMLObjectElement interface: operation reportValidity() assert_own_property: interface prototype object missing non-static operation expected property &quot;reportValidity&quot; missing
+PASS HTMLObjectElement interface: operation setCustomValidity(DOMString) 
+PASS HTMLObjectElement interface: attribute align 
+PASS HTMLObjectElement interface: attribute archive 
+PASS HTMLObjectElement interface: attribute code 
+PASS HTMLObjectElement interface: attribute declare 
+PASS HTMLObjectElement interface: attribute hspace 
+PASS HTMLObjectElement interface: attribute standby 
+PASS HTMLObjectElement interface: attribute vspace 
+PASS HTMLObjectElement interface: attribute codeBase 
+PASS HTMLObjectElement interface: attribute codeType 
+PASS HTMLObjectElement interface: attribute border 
+FAIL HTMLObjectElement must be primary interface of document.createElement(&quot;object&quot;) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL Stringification of document.createElement(&quot;object&quot;) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLObjectElement interface: document.createElement(&quot;object&quot;) must inherit property &quot;data&quot; with the proper type (0) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLObjectElement interface: document.createElement(&quot;object&quot;) must inherit property &quot;type&quot; with the proper type (1) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLObjectElement interface: document.createElement(&quot;object&quot;) must inherit property &quot;typeMustMatch&quot; with the proper type (2) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLObjectElement interface: document.createElement(&quot;object&quot;) must inherit property &quot;name&quot; with the proper type (3) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLObjectElement interface: document.createElement(&quot;object&quot;) must inherit property &quot;useMap&quot; with the proper type (4) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLObjectElement interface: document.createElement(&quot;object&quot;) must inherit property &quot;form&quot; with the proper type (5) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLObjectElement interface: document.createElement(&quot;object&quot;) must inherit property &quot;width&quot; with the proper type (6) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLObjectElement interface: document.createElement(&quot;object&quot;) must inherit property &quot;height&quot; with the proper type (7) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLObjectElement interface: document.createElement(&quot;object&quot;) must inherit property &quot;contentDocument&quot; with the proper type (8) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLObjectElement interface: document.createElement(&quot;object&quot;) must inherit property &quot;contentWindow&quot; with the proper type (9) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLObjectElement interface: document.createElement(&quot;object&quot;) must inherit property &quot;willValidate&quot; with the proper type (10) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLObjectElement interface: document.createElement(&quot;object&quot;) must inherit property &quot;validity&quot; with the proper type (11) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLObjectElement interface: document.createElement(&quot;object&quot;) must inherit property &quot;validationMessage&quot; with the proper type (12) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLObjectElement interface: document.createElement(&quot;object&quot;) must inherit property &quot;checkValidity&quot; with the proper type (13) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLObjectElement interface: document.createElement(&quot;object&quot;) must inherit property &quot;reportValidity&quot; with the proper type (14) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLObjectElement interface: document.createElement(&quot;object&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (15) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLObjectElement interface: calling setCustomValidity(DOMString) on document.createElement(&quot;object&quot;) with too few arguments must throw TypeError assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLObjectElement interface: document.createElement(&quot;object&quot;) must inherit property &quot;align&quot; with the proper type (17) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLObjectElement interface: document.createElement(&quot;object&quot;) must inherit property &quot;archive&quot; with the proper type (18) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLObjectElement interface: document.createElement(&quot;object&quot;) must inherit property &quot;code&quot; with the proper type (19) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLObjectElement interface: document.createElement(&quot;object&quot;) must inherit property &quot;declare&quot; with the proper type (20) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLObjectElement interface: document.createElement(&quot;object&quot;) must inherit property &quot;hspace&quot; with the proper type (21) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLObjectElement interface: document.createElement(&quot;object&quot;) must inherit property &quot;standby&quot; with the proper type (22) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLObjectElement interface: document.createElement(&quot;object&quot;) must inherit property &quot;vspace&quot; with the proper type (23) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLObjectElement interface: document.createElement(&quot;object&quot;) must inherit property &quot;codeBase&quot; with the proper type (24) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLObjectElement interface: document.createElement(&quot;object&quot;) must inherit property &quot;codeType&quot; with the proper type (25) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+FAIL HTMLObjectElement interface: document.createElement(&quot;object&quot;) must inherit property &quot;border&quot; with the proper type (26) assert_equals: wrong typeof object expected &quot;function&quot; but got &quot;object&quot;
+PASS HTMLParamElement interface: existence and properties of interface object 
+PASS HTMLParamElement interface object length 
+PASS HTMLParamElement interface object name 
+PASS HTMLParamElement interface: existence and properties of interface prototype object 
+PASS HTMLParamElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLParamElement interface: attribute name 
+PASS HTMLParamElement interface: attribute value 
+PASS HTMLParamElement interface: attribute type 
+PASS HTMLParamElement interface: attribute valueType 
+PASS HTMLParamElement must be primary interface of document.createElement(&quot;param&quot;) 
+PASS Stringification of document.createElement(&quot;param&quot;) 
+PASS HTMLParamElement interface: document.createElement(&quot;param&quot;) must inherit property &quot;name&quot; with the proper type (0) 
+PASS HTMLParamElement interface: document.createElement(&quot;param&quot;) must inherit property &quot;value&quot; with the proper type (1) 
+PASS HTMLParamElement interface: document.createElement(&quot;param&quot;) must inherit property &quot;type&quot; with the proper type (2) 
+PASS HTMLParamElement interface: document.createElement(&quot;param&quot;) must inherit property &quot;valueType&quot; with the proper type (3) 
+PASS HTMLVideoElement interface: existence and properties of interface object 
+PASS HTMLVideoElement interface object length 
+PASS HTMLVideoElement interface object name 
+PASS HTMLVideoElement interface: existence and properties of interface prototype object 
+PASS HTMLVideoElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLVideoElement interface: attribute width 
+PASS HTMLVideoElement interface: attribute height 
+PASS HTMLVideoElement interface: attribute videoWidth 
+PASS HTMLVideoElement interface: attribute videoHeight 
+PASS HTMLVideoElement interface: attribute poster 
+PASS HTMLVideoElement must be primary interface of document.createElement(&quot;video&quot;) 
+PASS Stringification of document.createElement(&quot;video&quot;) 
+PASS HTMLVideoElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;width&quot; with the proper type (0) 
+PASS HTMLVideoElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;height&quot; with the proper type (1) 
+PASS HTMLVideoElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;videoWidth&quot; with the proper type (2) 
+PASS HTMLVideoElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;videoHeight&quot; with the proper type (3) 
+PASS HTMLVideoElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;poster&quot; with the proper type (4) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;error&quot; with the proper type (0) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;src&quot; with the proper type (1) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;currentSrc&quot; with the proper type (2) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;crossOrigin&quot; with the proper type (3) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;NETWORK_EMPTY&quot; with the proper type (4) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;NETWORK_IDLE&quot; with the proper type (5) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;NETWORK_LOADING&quot; with the proper type (6) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;NETWORK_NO_SOURCE&quot; with the proper type (7) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;networkState&quot; with the proper type (8) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;preload&quot; with the proper type (9) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;buffered&quot; with the proper type (10) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;load&quot; with the proper type (11) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;canPlayType&quot; with the proper type (12) 
+FAIL HTMLMediaElement interface: calling canPlayType(DOMString) on document.createElement(&quot;video&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;HAVE_NOTHING&quot; with the proper type (13) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;HAVE_METADATA&quot; with the proper type (14) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;HAVE_CURRENT_DATA&quot; with the proper type (15) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;HAVE_FUTURE_DATA&quot; with the proper type (16) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;HAVE_ENOUGH_DATA&quot; with the proper type (17) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;readyState&quot; with the proper type (18) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;seeking&quot; with the proper type (19) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;currentTime&quot; with the proper type (20) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;fastSeek&quot; with the proper type (21) 
+PASS HTMLMediaElement interface: calling fastSeek(double) on document.createElement(&quot;video&quot;) with too few arguments must throw TypeError 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;duration&quot; with the proper type (22) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;getStartDate&quot; with the proper type (23) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;paused&quot; with the proper type (24) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;defaultPlaybackRate&quot; with the proper type (25) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;playbackRate&quot; with the proper type (26) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;played&quot; with the proper type (27) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;seekable&quot; with the proper type (28) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;ended&quot; with the proper type (29) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;autoplay&quot; with the proper type (30) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;loop&quot; with the proper type (31) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;play&quot; with the proper type (32) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;pause&quot; with the proper type (33) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;mediaGroup&quot; with the proper type (34) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;controller&quot; with the proper type (35) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;controls&quot; with the proper type (36) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;volume&quot; with the proper type (37) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;muted&quot; with the proper type (38) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;defaultMuted&quot; with the proper type (39) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;audioTracks&quot; with the proper type (40) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;videoTracks&quot; with the proper type (41) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;textTracks&quot; with the proper type (42) 
+PASS HTMLMediaElement interface: document.createElement(&quot;video&quot;) must inherit property &quot;addTextTrack&quot; with the proper type (43) 
+PASS HTMLMediaElement interface: calling addTextTrack(TextTrackKind,DOMString,DOMString) on document.createElement(&quot;video&quot;) with too few arguments must throw TypeError 
+PASS HTMLAudioElement interface: existence and properties of interface object 
+PASS HTMLAudioElement interface object length 
+PASS HTMLAudioElement interface object name 
+PASS HTMLAudioElement interface: existence and properties of interface prototype object 
+PASS HTMLAudioElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLAudioElement must be primary interface of document.createElement(&quot;audio&quot;) 
+PASS Stringification of document.createElement(&quot;audio&quot;) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;error&quot; with the proper type (0) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;src&quot; with the proper type (1) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;currentSrc&quot; with the proper type (2) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;crossOrigin&quot; with the proper type (3) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;NETWORK_EMPTY&quot; with the proper type (4) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;NETWORK_IDLE&quot; with the proper type (5) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;NETWORK_LOADING&quot; with the proper type (6) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;NETWORK_NO_SOURCE&quot; with the proper type (7) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;networkState&quot; with the proper type (8) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;preload&quot; with the proper type (9) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;buffered&quot; with the proper type (10) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;load&quot; with the proper type (11) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;canPlayType&quot; with the proper type (12) 
+FAIL HTMLMediaElement interface: calling canPlayType(DOMString) on document.createElement(&quot;audio&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;HAVE_NOTHING&quot; with the proper type (13) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;HAVE_METADATA&quot; with the proper type (14) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;HAVE_CURRENT_DATA&quot; with the proper type (15) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;HAVE_FUTURE_DATA&quot; with the proper type (16) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;HAVE_ENOUGH_DATA&quot; with the proper type (17) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;readyState&quot; with the proper type (18) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;seeking&quot; with the proper type (19) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;currentTime&quot; with the proper type (20) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;fastSeek&quot; with the proper type (21) 
+PASS HTMLMediaElement interface: calling fastSeek(double) on document.createElement(&quot;audio&quot;) with too few arguments must throw TypeError 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;duration&quot; with the proper type (22) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;getStartDate&quot; with the proper type (23) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;paused&quot; with the proper type (24) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;defaultPlaybackRate&quot; with the proper type (25) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;playbackRate&quot; with the proper type (26) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;played&quot; with the proper type (27) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;seekable&quot; with the proper type (28) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;ended&quot; with the proper type (29) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;autoplay&quot; with the proper type (30) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;loop&quot; with the proper type (31) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;play&quot; with the proper type (32) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;pause&quot; with the proper type (33) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;mediaGroup&quot; with the proper type (34) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;controller&quot; with the proper type (35) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;controls&quot; with the proper type (36) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;volume&quot; with the proper type (37) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;muted&quot; with the proper type (38) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;defaultMuted&quot; with the proper type (39) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;audioTracks&quot; with the proper type (40) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;videoTracks&quot; with the proper type (41) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;textTracks&quot; with the proper type (42) 
+PASS HTMLMediaElement interface: document.createElement(&quot;audio&quot;) must inherit property &quot;addTextTrack&quot; with the proper type (43) 
+PASS HTMLMediaElement interface: calling addTextTrack(TextTrackKind,DOMString,DOMString) on document.createElement(&quot;audio&quot;) with too few arguments must throw TypeError 
+PASS HTMLAudioElement must be primary interface of new Audio() 
+PASS Stringification of new Audio() 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;error&quot; with the proper type (0) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;src&quot; with the proper type (1) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;currentSrc&quot; with the proper type (2) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;crossOrigin&quot; with the proper type (3) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;NETWORK_EMPTY&quot; with the proper type (4) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;NETWORK_IDLE&quot; with the proper type (5) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;NETWORK_LOADING&quot; with the proper type (6) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;NETWORK_NO_SOURCE&quot; with the proper type (7) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;networkState&quot; with the proper type (8) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;preload&quot; with the proper type (9) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;buffered&quot; with the proper type (10) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;load&quot; with the proper type (11) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;canPlayType&quot; with the proper type (12) 
+FAIL HTMLMediaElement interface: calling canPlayType(DOMString) on new Audio() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;HAVE_NOTHING&quot; with the proper type (13) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;HAVE_METADATA&quot; with the proper type (14) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;HAVE_CURRENT_DATA&quot; with the proper type (15) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;HAVE_FUTURE_DATA&quot; with the proper type (16) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;HAVE_ENOUGH_DATA&quot; with the proper type (17) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;readyState&quot; with the proper type (18) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;seeking&quot; with the proper type (19) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;currentTime&quot; with the proper type (20) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;fastSeek&quot; with the proper type (21) 
+PASS HTMLMediaElement interface: calling fastSeek(double) on new Audio() with too few arguments must throw TypeError 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;duration&quot; with the proper type (22) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;getStartDate&quot; with the proper type (23) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;paused&quot; with the proper type (24) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;defaultPlaybackRate&quot; with the proper type (25) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;playbackRate&quot; with the proper type (26) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;played&quot; with the proper type (27) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;seekable&quot; with the proper type (28) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;ended&quot; with the proper type (29) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;autoplay&quot; with the proper type (30) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;loop&quot; with the proper type (31) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;play&quot; with the proper type (32) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;pause&quot; with the proper type (33) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;mediaGroup&quot; with the proper type (34) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;controller&quot; with the proper type (35) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;controls&quot; with the proper type (36) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;volume&quot; with the proper type (37) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;muted&quot; with the proper type (38) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;defaultMuted&quot; with the proper type (39) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;audioTracks&quot; with the proper type (40) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;videoTracks&quot; with the proper type (41) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;textTracks&quot; with the proper type (42) 
+PASS HTMLMediaElement interface: new Audio() must inherit property &quot;addTextTrack&quot; with the proper type (43) 
+PASS HTMLMediaElement interface: calling addTextTrack(TextTrackKind,DOMString,DOMString) on new Audio() with too few arguments must throw TypeError 
+PASS HTMLSourceElement interface: existence and properties of interface object 
+PASS HTMLSourceElement interface object length 
+PASS HTMLSourceElement interface object name 
+PASS HTMLSourceElement interface: existence and properties of interface prototype object 
+PASS HTMLSourceElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLSourceElement interface: attribute src 
+PASS HTMLSourceElement interface: attribute type 
+FAIL HTMLSourceElement interface: attribute srcset assert_true: The prototype object must have a property &quot;srcset&quot; expected true got false
+FAIL HTMLSourceElement interface: attribute sizes assert_true: The prototype object must have a property &quot;sizes&quot; expected true got false
+PASS HTMLSourceElement interface: attribute media 
+PASS HTMLSourceElement must be primary interface of document.createElement(&quot;source&quot;) 
+PASS Stringification of document.createElement(&quot;source&quot;) 
+PASS HTMLSourceElement interface: document.createElement(&quot;source&quot;) must inherit property &quot;src&quot; with the proper type (0) 
+PASS HTMLSourceElement interface: document.createElement(&quot;source&quot;) must inherit property &quot;type&quot; with the proper type (1) 
+FAIL HTMLSourceElement interface: document.createElement(&quot;source&quot;) must inherit property &quot;srcset&quot; with the proper type (2) assert_inherits: property &quot;srcset&quot; not found in prototype chain
+FAIL HTMLSourceElement interface: document.createElement(&quot;source&quot;) must inherit property &quot;sizes&quot; with the proper type (3) assert_inherits: property &quot;sizes&quot; not found in prototype chain
+PASS HTMLSourceElement interface: document.createElement(&quot;source&quot;) must inherit property &quot;media&quot; with the proper type (4) 
+PASS HTMLTrackElement interface: existence and properties of interface object 
+PASS HTMLTrackElement interface object length 
+PASS HTMLTrackElement interface object name 
+PASS HTMLTrackElement interface: existence and properties of interface prototype object 
+PASS HTMLTrackElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLTrackElement interface: attribute kind 
+PASS HTMLTrackElement interface: attribute src 
+PASS HTMLTrackElement interface: attribute srclang 
+PASS HTMLTrackElement interface: attribute label 
+PASS HTMLTrackElement interface: attribute default 
+PASS HTMLTrackElement interface: constant NONE on interface object 
+PASS HTMLTrackElement interface: constant NONE on interface prototype object 
+PASS HTMLTrackElement interface: constant LOADING on interface object 
+PASS HTMLTrackElement interface: constant LOADING on interface prototype object 
+PASS HTMLTrackElement interface: constant LOADED on interface object 
+PASS HTMLTrackElement interface: constant LOADED on interface prototype object 
+PASS HTMLTrackElement interface: constant ERROR on interface object 
+PASS HTMLTrackElement interface: constant ERROR on interface prototype object 
+PASS HTMLTrackElement interface: attribute readyState 
+PASS HTMLTrackElement interface: attribute track 
+PASS HTMLTrackElement must be primary interface of document.createElement(&quot;track&quot;) 
+PASS Stringification of document.createElement(&quot;track&quot;) 
+PASS HTMLTrackElement interface: document.createElement(&quot;track&quot;) must inherit property &quot;kind&quot; with the proper type (0) 
+PASS HTMLTrackElement interface: document.createElement(&quot;track&quot;) must inherit property &quot;src&quot; with the proper type (1) 
+PASS HTMLTrackElement interface: document.createElement(&quot;track&quot;) must inherit property &quot;srclang&quot; with the proper type (2) 
+PASS HTMLTrackElement interface: document.createElement(&quot;track&quot;) must inherit property &quot;label&quot; with the proper type (3) 
+PASS HTMLTrackElement interface: document.createElement(&quot;track&quot;) must inherit property &quot;default&quot; with the proper type (4) 
+PASS HTMLTrackElement interface: document.createElement(&quot;track&quot;) must inherit property &quot;NONE&quot; with the proper type (5) 
+PASS HTMLTrackElement interface: document.createElement(&quot;track&quot;) must inherit property &quot;LOADING&quot; with the proper type (6) 
+PASS HTMLTrackElement interface: document.createElement(&quot;track&quot;) must inherit property &quot;LOADED&quot; with the proper type (7) 
+PASS HTMLTrackElement interface: document.createElement(&quot;track&quot;) must inherit property &quot;ERROR&quot; with the proper type (8) 
+PASS HTMLTrackElement interface: document.createElement(&quot;track&quot;) must inherit property &quot;readyState&quot; with the proper type (9) 
+PASS HTMLTrackElement interface: document.createElement(&quot;track&quot;) must inherit property &quot;track&quot; with the proper type (10) 
+PASS HTMLMediaElement interface: existence and properties of interface object 
+PASS HTMLMediaElement interface object length 
+PASS HTMLMediaElement interface object name 
+PASS HTMLMediaElement interface: existence and properties of interface prototype object 
+PASS HTMLMediaElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLMediaElement interface: attribute error 
+PASS HTMLMediaElement interface: attribute src 
+PASS HTMLMediaElement interface: attribute currentSrc 
+PASS HTMLMediaElement interface: attribute crossOrigin 
+PASS HTMLMediaElement interface: constant NETWORK_EMPTY on interface object 
+PASS HTMLMediaElement interface: constant NETWORK_EMPTY on interface prototype object 
+PASS HTMLMediaElement interface: constant NETWORK_IDLE on interface object 
+PASS HTMLMediaElement interface: constant NETWORK_IDLE on interface prototype object 
+PASS HTMLMediaElement interface: constant NETWORK_LOADING on interface object 
+PASS HTMLMediaElement interface: constant NETWORK_LOADING on interface prototype object 
+PASS HTMLMediaElement interface: constant NETWORK_NO_SOURCE on interface object 
+PASS HTMLMediaElement interface: constant NETWORK_NO_SOURCE on interface prototype object 
+PASS HTMLMediaElement interface: attribute networkState 
+PASS HTMLMediaElement interface: attribute preload 
+PASS HTMLMediaElement interface: attribute buffered 
+PASS HTMLMediaElement interface: operation load() 
+FAIL HTMLMediaElement interface: operation canPlayType(DOMString) assert_equals: property has wrong .length expected 1 but got 0
+PASS HTMLMediaElement interface: constant HAVE_NOTHING on interface object 
+PASS HTMLMediaElement interface: constant HAVE_NOTHING on interface prototype object 
+PASS HTMLMediaElement interface: constant HAVE_METADATA on interface object 
+PASS HTMLMediaElement interface: constant HAVE_METADATA on interface prototype object 
+PASS HTMLMediaElement interface: constant HAVE_CURRENT_DATA on interface object 
+PASS HTMLMediaElement interface: constant HAVE_CURRENT_DATA on interface prototype object 
+PASS HTMLMediaElement interface: constant HAVE_FUTURE_DATA on interface object 
+PASS HTMLMediaElement interface: constant HAVE_FUTURE_DATA on interface prototype object 
+PASS HTMLMediaElement interface: constant HAVE_ENOUGH_DATA on interface object 
+PASS HTMLMediaElement interface: constant HAVE_ENOUGH_DATA on interface prototype object 
+PASS HTMLMediaElement interface: attribute readyState 
+PASS HTMLMediaElement interface: attribute seeking 
+PASS HTMLMediaElement interface: attribute currentTime 
+PASS HTMLMediaElement interface: operation fastSeek(double) 
+PASS HTMLMediaElement interface: attribute duration 
+PASS HTMLMediaElement interface: operation getStartDate() 
+PASS HTMLMediaElement interface: attribute paused 
+PASS HTMLMediaElement interface: attribute defaultPlaybackRate 
+PASS HTMLMediaElement interface: attribute playbackRate 
+PASS HTMLMediaElement interface: attribute played 
+PASS HTMLMediaElement interface: attribute seekable 
+PASS HTMLMediaElement interface: attribute ended 
+PASS HTMLMediaElement interface: attribute autoplay 
+PASS HTMLMediaElement interface: attribute loop 
+FAIL HTMLMediaElement interface: operation play() assert_throws: calling operation with this = null didn't throw TypeError function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS HTMLMediaElement interface: operation pause() 
+PASS HTMLMediaElement interface: attribute mediaGroup 
+PASS HTMLMediaElement interface: attribute controller 
+PASS HTMLMediaElement interface: attribute controls 
+PASS HTMLMediaElement interface: attribute volume 
+PASS HTMLMediaElement interface: attribute muted 
+PASS HTMLMediaElement interface: attribute defaultMuted 
+PASS HTMLMediaElement interface: attribute audioTracks 
+PASS HTMLMediaElement interface: attribute videoTracks 
+PASS HTMLMediaElement interface: attribute textTracks 
+PASS HTMLMediaElement interface: operation addTextTrack(TextTrackKind,DOMString,DOMString) 
+PASS MediaError interface: existence and properties of interface object 
+PASS MediaError interface object length 
+PASS MediaError interface object name 
+PASS MediaError interface: existence and properties of interface prototype object 
+PASS MediaError interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS MediaError interface: constant MEDIA_ERR_ABORTED on interface object 
+PASS MediaError interface: constant MEDIA_ERR_ABORTED on interface prototype object 
+PASS MediaError interface: constant MEDIA_ERR_NETWORK on interface object 
+PASS MediaError interface: constant MEDIA_ERR_NETWORK on interface prototype object 
+PASS MediaError interface: constant MEDIA_ERR_DECODE on interface object 
+PASS MediaError interface: constant MEDIA_ERR_DECODE on interface prototype object 
+PASS MediaError interface: constant MEDIA_ERR_SRC_NOT_SUPPORTED on interface object 
+PASS MediaError interface: constant MEDIA_ERR_SRC_NOT_SUPPORTED on interface prototype object 
+PASS MediaError interface: attribute code 
+PASS MediaError must be primary interface of errorVideo.error 
+PASS Stringification of errorVideo.error 
+PASS MediaError interface: errorVideo.error must inherit property &quot;MEDIA_ERR_ABORTED&quot; with the proper type (0) 
+PASS MediaError interface: errorVideo.error must inherit property &quot;MEDIA_ERR_NETWORK&quot; with the proper type (1) 
+PASS MediaError interface: errorVideo.error must inherit property &quot;MEDIA_ERR_DECODE&quot; with the proper type (2) 
+PASS MediaError interface: errorVideo.error must inherit property &quot;MEDIA_ERR_SRC_NOT_SUPPORTED&quot; with the proper type (3) 
+PASS MediaError interface: errorVideo.error must inherit property &quot;code&quot; with the proper type (4) 
+PASS AudioTrackList interface: existence and properties of interface object 
+PASS AudioTrackList interface object length 
+PASS AudioTrackList interface object name 
+PASS AudioTrackList interface: existence and properties of interface prototype object 
+PASS AudioTrackList interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS AudioTrackList interface: attribute length 
+PASS AudioTrackList interface: operation getTrackById(DOMString) 
+PASS AudioTrackList interface: attribute onchange 
+PASS AudioTrackList interface: attribute onaddtrack 
+PASS AudioTrackList interface: attribute onremovetrack 
+PASS AudioTrack interface: existence and properties of interface object 
+PASS AudioTrack interface object length 
+PASS AudioTrack interface object name 
+PASS AudioTrack interface: existence and properties of interface prototype object 
+PASS AudioTrack interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS AudioTrack interface: attribute id 
+FAIL AudioTrack interface: attribute kind assert_equals: setter must be undefined for readonly attributes expected (undefined) undefined but got (function) function &quot;function kind() {
+    [native code]
+}&quot;
+PASS AudioTrack interface: attribute label 
+FAIL AudioTrack interface: attribute language assert_equals: setter must be undefined for readonly attributes expected (undefined) undefined but got (function) function &quot;function language() {
+    [native code]
+}&quot;
+PASS AudioTrack interface: attribute enabled 
+PASS VideoTrackList interface: existence and properties of interface object 
+PASS VideoTrackList interface object length 
+PASS VideoTrackList interface object name 
+PASS VideoTrackList interface: existence and properties of interface prototype object 
+PASS VideoTrackList interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS VideoTrackList interface: attribute length 
+PASS VideoTrackList interface: operation getTrackById(DOMString) 
+PASS VideoTrackList interface: attribute selectedIndex 
+PASS VideoTrackList interface: attribute onchange 
+PASS VideoTrackList interface: attribute onaddtrack 
+PASS VideoTrackList interface: attribute onremovetrack 
+PASS VideoTrack interface: existence and properties of interface object 
+PASS VideoTrack interface object length 
+PASS VideoTrack interface object name 
+PASS VideoTrack interface: existence and properties of interface prototype object 
+PASS VideoTrack interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS VideoTrack interface: attribute id 
+FAIL VideoTrack interface: attribute kind assert_equals: setter must be undefined for readonly attributes expected (undefined) undefined but got (function) function &quot;function kind() {
+    [native code]
+}&quot;
+PASS VideoTrack interface: attribute label 
+FAIL VideoTrack interface: attribute language assert_equals: setter must be undefined for readonly attributes expected (undefined) undefined but got (function) function &quot;function language() {
+    [native code]
+}&quot;
+PASS VideoTrack interface: attribute selected 
+PASS MediaController interface: existence and properties of interface object 
+PASS MediaController interface object length 
+PASS MediaController interface object name 
+PASS MediaController interface: existence and properties of interface prototype object 
+PASS MediaController interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+FAIL MediaController interface: attribute readyState assert_true: The prototype object must have a property &quot;readyState&quot; expected true got false
+PASS MediaController interface: attribute buffered 
+PASS MediaController interface: attribute seekable 
+PASS MediaController interface: attribute duration 
+PASS MediaController interface: attribute currentTime 
+PASS MediaController interface: attribute paused 
+PASS MediaController interface: attribute playbackState 
+PASS MediaController interface: attribute played 
+PASS MediaController interface: operation pause() 
+PASS MediaController interface: operation unpause() 
+PASS MediaController interface: operation play() 
+PASS MediaController interface: attribute defaultPlaybackRate 
+PASS MediaController interface: attribute playbackRate 
+PASS MediaController interface: attribute volume 
+PASS MediaController interface: attribute muted 
+FAIL MediaController interface: attribute onemptied assert_true: The prototype object must have a property &quot;onemptied&quot; expected true got false
+FAIL MediaController interface: attribute onloadedmetadata assert_true: The prototype object must have a property &quot;onloadedmetadata&quot; expected true got false
+FAIL MediaController interface: attribute onloadeddata assert_true: The prototype object must have a property &quot;onloadeddata&quot; expected true got false
+FAIL MediaController interface: attribute oncanplay assert_true: The prototype object must have a property &quot;oncanplay&quot; expected true got false
+FAIL MediaController interface: attribute oncanplaythrough assert_true: The prototype object must have a property &quot;oncanplaythrough&quot; expected true got false
+FAIL MediaController interface: attribute onplaying assert_true: The prototype object must have a property &quot;onplaying&quot; expected true got false
+FAIL MediaController interface: attribute onended assert_true: The prototype object must have a property &quot;onended&quot; expected true got false
+FAIL MediaController interface: attribute onwaiting assert_true: The prototype object must have a property &quot;onwaiting&quot; expected true got false
+FAIL MediaController interface: attribute ondurationchange assert_true: The prototype object must have a property &quot;ondurationchange&quot; expected true got false
+FAIL MediaController interface: attribute ontimeupdate assert_true: The prototype object must have a property &quot;ontimeupdate&quot; expected true got false
+FAIL MediaController interface: attribute onplay assert_true: The prototype object must have a property &quot;onplay&quot; expected true got false
+FAIL MediaController interface: attribute onpause assert_true: The prototype object must have a property &quot;onpause&quot; expected true got false
+FAIL MediaController interface: attribute onratechange assert_true: The prototype object must have a property &quot;onratechange&quot; expected true got false
+FAIL MediaController interface: attribute onvolumechange assert_true: The prototype object must have a property &quot;onvolumechange&quot; expected true got false
+PASS MediaController must be primary interface of new MediaController() 
+PASS Stringification of new MediaController() 
+FAIL MediaController interface: new MediaController() must inherit property &quot;readyState&quot; with the proper type (0) assert_inherits: property &quot;readyState&quot; not found in prototype chain
+PASS MediaController interface: new MediaController() must inherit property &quot;buffered&quot; with the proper type (1) 
+PASS MediaController interface: new MediaController() must inherit property &quot;seekable&quot; with the proper type (2) 
+PASS MediaController interface: new MediaController() must inherit property &quot;duration&quot; with the proper type (3) 
+PASS MediaController interface: new MediaController() must inherit property &quot;currentTime&quot; with the proper type (4) 
+PASS MediaController interface: new MediaController() must inherit property &quot;paused&quot; with the proper type (5) 
+PASS MediaController interface: new MediaController() must inherit property &quot;playbackState&quot; with the proper type (6) 
+PASS MediaController interface: new MediaController() must inherit property &quot;played&quot; with the proper type (7) 
+PASS MediaController interface: new MediaController() must inherit property &quot;pause&quot; with the proper type (8) 
+PASS MediaController interface: new MediaController() must inherit property &quot;unpause&quot; with the proper type (9) 
+PASS MediaController interface: new MediaController() must inherit property &quot;play&quot; with the proper type (10) 
+PASS MediaController interface: new MediaController() must inherit property &quot;defaultPlaybackRate&quot; with the proper type (11) 
+PASS MediaController interface: new MediaController() must inherit property &quot;playbackRate&quot; with the proper type (12) 
+PASS MediaController interface: new MediaController() must inherit property &quot;volume&quot; with the proper type (13) 
+PASS MediaController interface: new MediaController() must inherit property &quot;muted&quot; with the proper type (14) 
+FAIL MediaController interface: new MediaController() must inherit property &quot;onemptied&quot; with the proper type (15) assert_inherits: property &quot;onemptied&quot; not found in prototype chain
+FAIL MediaController interface: new MediaController() must inherit property &quot;onloadedmetadata&quot; with the proper type (16) assert_inherits: property &quot;onloadedmetadata&quot; not found in prototype chain
+FAIL MediaController interface: new MediaController() must inherit property &quot;onloadeddata&quot; with the proper type (17) assert_inherits: property &quot;onloadeddata&quot; not found in prototype chain
+FAIL MediaController interface: new MediaController() must inherit property &quot;oncanplay&quot; with the proper type (18) assert_inherits: property &quot;oncanplay&quot; not found in prototype chain
+FAIL MediaController interface: new MediaController() must inherit property &quot;oncanplaythrough&quot; with the proper type (19) assert_inherits: property &quot;oncanplaythrough&quot; not found in prototype chain
+FAIL MediaController interface: new MediaController() must inherit property &quot;onplaying&quot; with the proper type (20) assert_inherits: property &quot;onplaying&quot; not found in prototype chain
+FAIL MediaController interface: new MediaController() must inherit property &quot;onended&quot; with the proper type (21) assert_inherits: property &quot;onended&quot; not found in prototype chain
+FAIL MediaController interface: new MediaController() must inherit property &quot;onwaiting&quot; with the proper type (22) assert_inherits: property &quot;onwaiting&quot; not found in prototype chain
+FAIL MediaController interface: new MediaController() must inherit property &quot;ondurationchange&quot; with the proper type (23) assert_inherits: property &quot;ondurationchange&quot; not found in prototype chain
+FAIL MediaController interface: new MediaController() must inherit property &quot;ontimeupdate&quot; with the proper type (24) assert_inherits: property &quot;ontimeupdate&quot; not found in prototype chain
+FAIL MediaController interface: new MediaController() must inherit property &quot;onplay&quot; with the proper type (25) assert_inherits: property &quot;onplay&quot; not found in prototype chain
+FAIL MediaController interface: new MediaController() must inherit property &quot;onpause&quot; with the proper type (26) assert_inherits: property &quot;onpause&quot; not found in prototype chain
+FAIL MediaController interface: new MediaController() must inherit property &quot;onratechange&quot; with the proper type (27) assert_inherits: property &quot;onratechange&quot; not found in prototype chain
+FAIL MediaController interface: new MediaController() must inherit property &quot;onvolumechange&quot; with the proper type (28) assert_inherits: property &quot;onvolumechange&quot; not found in prototype chain
+PASS EventTarget interface: new MediaController() must inherit property &quot;addEventListener&quot; with the proper type (0) 
+FAIL EventTarget interface: calling addEventListener(DOMString,EventListener,boolean) on new MediaController() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS EventTarget interface: new MediaController() must inherit property &quot;removeEventListener&quot; with the proper type (1) 
+FAIL EventTarget interface: calling removeEventListener(DOMString,EventListener,boolean) on new MediaController() with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS EventTarget interface: new MediaController() must inherit property &quot;dispatchEvent&quot; with the proper type (2) 
+PASS EventTarget interface: calling dispatchEvent(Event) on new MediaController() with too few arguments must throw TypeError 
+PASS TextTrackList interface: existence and properties of interface object 
+PASS TextTrackList interface object length 
+PASS TextTrackList interface object name 
+PASS TextTrackList interface: existence and properties of interface prototype object 
+PASS TextTrackList interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS TextTrackList interface: attribute length 
+PASS TextTrackList interface: operation getTrackById(DOMString) 
+PASS TextTrackList interface: attribute onchange 
+PASS TextTrackList interface: attribute onaddtrack 
+PASS TextTrackList interface: attribute onremovetrack 
+PASS TextTrackList must be primary interface of document.createElement(&quot;video&quot;).textTracks 
+PASS Stringification of document.createElement(&quot;video&quot;).textTracks 
+PASS TextTrackList interface: document.createElement(&quot;video&quot;).textTracks must inherit property &quot;length&quot; with the proper type (0) 
+PASS TextTrackList interface: document.createElement(&quot;video&quot;).textTracks must inherit property &quot;getTrackById&quot; with the proper type (2) 
+PASS TextTrackList interface: calling getTrackById(DOMString) on document.createElement(&quot;video&quot;).textTracks with too few arguments must throw TypeError 
+PASS TextTrackList interface: document.createElement(&quot;video&quot;).textTracks must inherit property &quot;onchange&quot; with the proper type (3) 
+PASS TextTrackList interface: document.createElement(&quot;video&quot;).textTracks must inherit property &quot;onaddtrack&quot; with the proper type (4) 
+PASS TextTrackList interface: document.createElement(&quot;video&quot;).textTracks must inherit property &quot;onremovetrack&quot; with the proper type (5) 
+PASS EventTarget interface: document.createElement(&quot;video&quot;).textTracks must inherit property &quot;addEventListener&quot; with the proper type (0) 
+FAIL EventTarget interface: calling addEventListener(DOMString,EventListener,boolean) on document.createElement(&quot;video&quot;).textTracks with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS EventTarget interface: document.createElement(&quot;video&quot;).textTracks must inherit property &quot;removeEventListener&quot; with the proper type (1) 
+FAIL EventTarget interface: calling removeEventListener(DOMString,EventListener,boolean) on document.createElement(&quot;video&quot;).textTracks with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS EventTarget interface: document.createElement(&quot;video&quot;).textTracks must inherit property &quot;dispatchEvent&quot; with the proper type (2) 
+PASS EventTarget interface: calling dispatchEvent(Event) on document.createElement(&quot;video&quot;).textTracks with too few arguments must throw TypeError 
+PASS TextTrack interface: existence and properties of interface object 
+PASS TextTrack interface object length 
+PASS TextTrack interface object name 
+PASS TextTrack interface: existence and properties of interface prototype object 
+PASS TextTrack interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+FAIL TextTrack interface: attribute kind assert_equals: setter must be undefined for readonly attributes expected (undefined) undefined but got (function) function &quot;function kind() {
+    [native code]
+}&quot;
+PASS TextTrack interface: attribute label 
+FAIL TextTrack interface: attribute language assert_equals: setter must be undefined for readonly attributes expected (undefined) undefined but got (function) function &quot;function language() {
+    [native code]
+}&quot;
+PASS TextTrack interface: attribute id 
+PASS TextTrack interface: attribute inBandMetadataTrackDispatchType 
+PASS TextTrack interface: attribute mode 
+PASS TextTrack interface: attribute cues 
+PASS TextTrack interface: attribute activeCues 
+PASS TextTrack interface: operation addCue(TextTrackCue) 
+PASS TextTrack interface: operation removeCue(TextTrackCue) 
+PASS TextTrack interface: attribute oncuechange 
+PASS TextTrack must be primary interface of document.createElement(&quot;track&quot;).track 
+PASS Stringification of document.createElement(&quot;track&quot;).track 
+PASS TextTrack interface: document.createElement(&quot;track&quot;).track must inherit property &quot;kind&quot; with the proper type (0) 
+PASS TextTrack interface: document.createElement(&quot;track&quot;).track must inherit property &quot;label&quot; with the proper type (1) 
+PASS TextTrack interface: document.createElement(&quot;track&quot;).track must inherit property &quot;language&quot; with the proper type (2) 
+PASS TextTrack interface: document.createElement(&quot;track&quot;).track must inherit property &quot;id&quot; with the proper type (3) 
+PASS TextTrack interface: document.createElement(&quot;track&quot;).track must inherit property &quot;inBandMetadataTrackDispatchType&quot; with the proper type (4) 
+PASS TextTrack interface: document.createElement(&quot;track&quot;).track must inherit property &quot;mode&quot; with the proper type (5) 
+PASS TextTrack interface: document.createElement(&quot;track&quot;).track must inherit property &quot;cues&quot; with the proper type (6) 
+PASS TextTrack interface: document.createElement(&quot;track&quot;).track must inherit property &quot;activeCues&quot; with the proper type (7) 
+PASS TextTrack interface: document.createElement(&quot;track&quot;).track must inherit property &quot;addCue&quot; with the proper type (8) 
+PASS TextTrack interface: calling addCue(TextTrackCue) on document.createElement(&quot;track&quot;).track with too few arguments must throw TypeError 
+PASS TextTrack interface: document.createElement(&quot;track&quot;).track must inherit property &quot;removeCue&quot; with the proper type (9) 
+PASS TextTrack interface: calling removeCue(TextTrackCue) on document.createElement(&quot;track&quot;).track with too few arguments must throw TypeError 
+PASS TextTrack interface: document.createElement(&quot;track&quot;).track must inherit property &quot;oncuechange&quot; with the proper type (10) 
+PASS EventTarget interface: document.createElement(&quot;track&quot;).track must inherit property &quot;addEventListener&quot; with the proper type (0) 
+FAIL EventTarget interface: calling addEventListener(DOMString,EventListener,boolean) on document.createElement(&quot;track&quot;).track with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS EventTarget interface: document.createElement(&quot;track&quot;).track must inherit property &quot;removeEventListener&quot; with the proper type (1) 
+FAIL EventTarget interface: calling removeEventListener(DOMString,EventListener,boolean) on document.createElement(&quot;track&quot;).track with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS EventTarget interface: document.createElement(&quot;track&quot;).track must inherit property &quot;dispatchEvent&quot; with the proper type (2) 
+PASS EventTarget interface: calling dispatchEvent(Event) on document.createElement(&quot;track&quot;).track with too few arguments must throw TypeError 
+PASS TextTrackCueList interface: existence and properties of interface object 
+PASS TextTrackCueList interface object length 
+PASS TextTrackCueList interface object name 
+PASS TextTrackCueList interface: existence and properties of interface prototype object 
+PASS TextTrackCueList interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS TextTrackCueList interface: attribute length 
+PASS TextTrackCueList interface: operation getCueById(DOMString) 
+PASS TextTrackCueList must be primary interface of document.createElement(&quot;video&quot;).addTextTrack(&quot;subtitles&quot;).cues 
+PASS Stringification of document.createElement(&quot;video&quot;).addTextTrack(&quot;subtitles&quot;).cues 
+PASS TextTrackCueList interface: document.createElement(&quot;video&quot;).addTextTrack(&quot;subtitles&quot;).cues must inherit property &quot;length&quot; with the proper type (0) 
+PASS TextTrackCueList interface: document.createElement(&quot;video&quot;).addTextTrack(&quot;subtitles&quot;).cues must inherit property &quot;getCueById&quot; with the proper type (2) 
+PASS TextTrackCueList interface: calling getCueById(DOMString) on document.createElement(&quot;video&quot;).addTextTrack(&quot;subtitles&quot;).cues with too few arguments must throw TypeError 
+PASS TextTrackCue interface: existence and properties of interface object 
+FAIL TextTrackCue interface object length assert_equals: wrong value for TextTrackCue.length expected 0 but got 3
+PASS TextTrackCue interface object name 
+PASS TextTrackCue interface: existence and properties of interface prototype object 
+PASS TextTrackCue interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS TextTrackCue interface: attribute track 
+PASS TextTrackCue interface: attribute id 
+PASS TextTrackCue interface: attribute startTime 
+PASS TextTrackCue interface: attribute endTime 
+PASS TextTrackCue interface: attribute pauseOnExit 
+PASS TextTrackCue interface: attribute onenter 
+PASS TextTrackCue interface: attribute onexit 
+PASS TimeRanges interface: existence and properties of interface object 
+PASS TimeRanges interface object length 
+PASS TimeRanges interface object name 
+PASS TimeRanges interface: existence and properties of interface prototype object 
+PASS TimeRanges interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS TimeRanges interface: attribute length 
+PASS TimeRanges interface: operation start(unsigned long) 
+PASS TimeRanges interface: operation end(unsigned long) 
+PASS TimeRanges must be primary interface of document.createElement(&quot;video&quot;).buffered 
+PASS Stringification of document.createElement(&quot;video&quot;).buffered 
+PASS TimeRanges interface: document.createElement(&quot;video&quot;).buffered must inherit property &quot;length&quot; with the proper type (0) 
+PASS TimeRanges interface: document.createElement(&quot;video&quot;).buffered must inherit property &quot;start&quot; with the proper type (1) 
+PASS TimeRanges interface: calling start(unsigned long) on document.createElement(&quot;video&quot;).buffered with too few arguments must throw TypeError 
+PASS TimeRanges interface: document.createElement(&quot;video&quot;).buffered must inherit property &quot;end&quot; with the proper type (2) 
+PASS TimeRanges interface: calling end(unsigned long) on document.createElement(&quot;video&quot;).buffered with too few arguments must throw TypeError 
+PASS TrackEvent interface: existence and properties of interface object 
+PASS TrackEvent interface object length 
+PASS TrackEvent interface object name 
+PASS TrackEvent interface: existence and properties of interface prototype object 
+PASS TrackEvent interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS TrackEvent interface: attribute track 
+PASS TrackEvent must be primary interface of new TrackEvent(&quot;addtrack&quot;, {track:document.createElement(&quot;track&quot;).track}) 
+PASS Stringification of new TrackEvent(&quot;addtrack&quot;, {track:document.createElement(&quot;track&quot;).track}) 
+FAIL TrackEvent interface: new TrackEvent(&quot;addtrack&quot;, {track:document.createElement(&quot;track&quot;).track}) must inherit property &quot;track&quot; with the proper type (0) Unrecognized type [object Object],[object Object],[object Object]
+PASS Event interface: new TrackEvent(&quot;addtrack&quot;, {track:document.createElement(&quot;track&quot;).track}) must inherit property &quot;type&quot; with the proper type (0) 
+PASS Event interface: new TrackEvent(&quot;addtrack&quot;, {track:document.createElement(&quot;track&quot;).track}) must inherit property &quot;target&quot; with the proper type (1) 
+PASS Event interface: new TrackEvent(&quot;addtrack&quot;, {track:document.createElement(&quot;track&quot;).track}) must inherit property &quot;currentTarget&quot; with the proper type (2) 
+PASS Event interface: new TrackEvent(&quot;addtrack&quot;, {track:document.createElement(&quot;track&quot;).track}) must inherit property &quot;NONE&quot; with the proper type (3) 
+PASS Event interface: new TrackEvent(&quot;addtrack&quot;, {track:document.createElement(&quot;track&quot;).track}) must inherit property &quot;CAPTURING_PHASE&quot; with the proper type (4) 
+PASS Event interface: new TrackEvent(&quot;addtrack&quot;, {track:document.createElement(&quot;track&quot;).track}) must inherit property &quot;AT_TARGET&quot; with the proper type (5) 
+PASS Event interface: new TrackEvent(&quot;addtrack&quot;, {track:document.createElement(&quot;track&quot;).track}) must inherit property &quot;BUBBLING_PHASE&quot; with the proper type (6) 
+PASS Event interface: new TrackEvent(&quot;addtrack&quot;, {track:document.createElement(&quot;track&quot;).track}) must inherit property &quot;eventPhase&quot; with the proper type (7) 
+PASS Event interface: new TrackEvent(&quot;addtrack&quot;, {track:document.createElement(&quot;track&quot;).track}) must inherit property &quot;stopPropagation&quot; with the proper type (8) 
+PASS Event interface: new TrackEvent(&quot;addtrack&quot;, {track:document.createElement(&quot;track&quot;).track}) must inherit property &quot;stopImmediatePropagation&quot; with the proper type (9) 
+PASS Event interface: new TrackEvent(&quot;addtrack&quot;, {track:document.createElement(&quot;track&quot;).track}) must inherit property &quot;bubbles&quot; with the proper type (10) 
+PASS Event interface: new TrackEvent(&quot;addtrack&quot;, {track:document.createElement(&quot;track&quot;).track}) must inherit property &quot;cancelable&quot; with the proper type (11) 
+PASS Event interface: new TrackEvent(&quot;addtrack&quot;, {track:document.createElement(&quot;track&quot;).track}) must inherit property &quot;preventDefault&quot; with the proper type (12) 
+PASS Event interface: new TrackEvent(&quot;addtrack&quot;, {track:document.createElement(&quot;track&quot;).track}) must inherit property &quot;defaultPrevented&quot; with the proper type (13) 
+PASS Event interface: new TrackEvent(&quot;addtrack&quot;, {track:document.createElement(&quot;track&quot;).track}) must have own property &quot;isTrusted&quot; 
+PASS Event interface: new TrackEvent(&quot;addtrack&quot;, {track:document.createElement(&quot;track&quot;).track}) must inherit property &quot;timeStamp&quot; with the proper type (15) 
+PASS Event interface: new TrackEvent(&quot;addtrack&quot;, {track:document.createElement(&quot;track&quot;).track}) must inherit property &quot;initEvent&quot; with the proper type (16) 
+FAIL Event interface: calling initEvent(DOMString,boolean,boolean) on new TrackEvent(&quot;addtrack&quot;, {track:document.createElement(&quot;track&quot;).track}) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS HTMLMapElement interface: existence and properties of interface object 
+PASS HTMLMapElement interface object length 
+PASS HTMLMapElement interface object name 
+PASS HTMLMapElement interface: existence and properties of interface prototype object 
+PASS HTMLMapElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLMapElement interface: attribute name 
+PASS HTMLMapElement interface: attribute areas 
+FAIL HTMLMapElement interface: attribute images assert_true: The prototype object must have a property &quot;images&quot; expected true got false
+PASS HTMLMapElement must be primary interface of document.createElement(&quot;map&quot;) 
+PASS Stringification of document.createElement(&quot;map&quot;) 
+PASS HTMLMapElement interface: document.createElement(&quot;map&quot;) must inherit property &quot;name&quot; with the proper type (0) 
+PASS HTMLMapElement interface: document.createElement(&quot;map&quot;) must inherit property &quot;areas&quot; with the proper type (1) 
+FAIL HTMLMapElement interface: document.createElement(&quot;map&quot;) must inherit property &quot;images&quot; with the proper type (2) assert_inherits: property &quot;images&quot; not found in prototype chain
+PASS HTMLAreaElement interface: existence and properties of interface object 
+PASS HTMLAreaElement interface object length 
+PASS HTMLAreaElement interface object name 
+PASS HTMLAreaElement interface: existence and properties of interface prototype object 
+PASS HTMLAreaElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLAreaElement interface: attribute alt 
+PASS HTMLAreaElement interface: attribute coords 
+PASS HTMLAreaElement interface: attribute shape 
+PASS HTMLAreaElement interface: attribute target 
+FAIL HTMLAreaElement interface: attribute download assert_true: The prototype object must have a property &quot;download&quot; expected true got false
+PASS HTMLAreaElement interface: attribute ping 
+PASS HTMLAreaElement interface: attribute rel 
+PASS HTMLAreaElement interface: attribute relList 
+PASS HTMLAreaElement interface: attribute noHref 
+PASS HTMLAreaElement interface: attribute href 
+PASS HTMLAreaElement interface: attribute origin 
+PASS HTMLAreaElement interface: attribute protocol 
+PASS HTMLAreaElement interface: attribute username 
+PASS HTMLAreaElement interface: attribute password 
+PASS HTMLAreaElement interface: attribute host 
+PASS HTMLAreaElement interface: attribute hostname 
+PASS HTMLAreaElement interface: attribute port 
+PASS HTMLAreaElement interface: attribute pathname 
+PASS HTMLAreaElement interface: attribute search 
+PASS HTMLAreaElement interface: attribute hash 
+PASS HTMLAreaElement must be primary interface of document.createElement(&quot;area&quot;) 
+PASS Stringification of document.createElement(&quot;area&quot;) 
+PASS HTMLAreaElement interface: document.createElement(&quot;area&quot;) must inherit property &quot;alt&quot; with the proper type (0) 
+PASS HTMLAreaElement interface: document.createElement(&quot;area&quot;) must inherit property &quot;coords&quot; with the proper type (1) 
+PASS HTMLAreaElement interface: document.createElement(&quot;area&quot;) must inherit property &quot;shape&quot; with the proper type (2) 
+PASS HTMLAreaElement interface: document.createElement(&quot;area&quot;) must inherit property &quot;target&quot; with the proper type (3) 
+FAIL HTMLAreaElement interface: document.createElement(&quot;area&quot;) must inherit property &quot;download&quot; with the proper type (4) assert_inherits: property &quot;download&quot; not found in prototype chain
+PASS HTMLAreaElement interface: document.createElement(&quot;area&quot;) must inherit property &quot;ping&quot; with the proper type (5) 
+PASS HTMLAreaElement interface: document.createElement(&quot;area&quot;) must inherit property &quot;rel&quot; with the proper type (6) 
+PASS HTMLAreaElement interface: document.createElement(&quot;area&quot;) must inherit property &quot;relList&quot; with the proper type (7) 
+PASS HTMLAreaElement interface: document.createElement(&quot;area&quot;) must inherit property &quot;noHref&quot; with the proper type (8) 
+PASS HTMLAreaElement interface: document.createElement(&quot;area&quot;) must inherit property &quot;href&quot; with the proper type (9) 
+PASS HTMLAreaElement interface: document.createElement(&quot;area&quot;) must inherit property &quot;origin&quot; with the proper type (10) 
+PASS HTMLAreaElement interface: document.createElement(&quot;area&quot;) must inherit property &quot;protocol&quot; with the proper type (11) 
+PASS HTMLAreaElement interface: document.createElement(&quot;area&quot;) must inherit property &quot;username&quot; with the proper type (12) 
+PASS HTMLAreaElement interface: document.createElement(&quot;area&quot;) must inherit property &quot;password&quot; with the proper type (13) 
+PASS HTMLAreaElement interface: document.createElement(&quot;area&quot;) must inherit property &quot;host&quot; with the proper type (14) 
+PASS HTMLAreaElement interface: document.createElement(&quot;area&quot;) must inherit property &quot;hostname&quot; with the proper type (15) 
+PASS HTMLAreaElement interface: document.createElement(&quot;area&quot;) must inherit property &quot;port&quot; with the proper type (16) 
+PASS HTMLAreaElement interface: document.createElement(&quot;area&quot;) must inherit property &quot;pathname&quot; with the proper type (17) 
+PASS HTMLAreaElement interface: document.createElement(&quot;area&quot;) must inherit property &quot;search&quot; with the proper type (18) 
+PASS HTMLAreaElement interface: document.createElement(&quot;area&quot;) must inherit property &quot;hash&quot; with the proper type (19) 
+PASS HTMLTableElement interface: existence and properties of interface object 
+PASS HTMLTableElement interface object length 
+PASS HTMLTableElement interface object name 
+PASS HTMLTableElement interface: existence and properties of interface prototype object 
+PASS HTMLTableElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLTableElement interface: attribute caption 
+PASS HTMLTableElement interface: operation createCaption() 
+PASS HTMLTableElement interface: operation deleteCaption() 
+PASS HTMLTableElement interface: attribute tHead 
+PASS HTMLTableElement interface: operation createTHead() 
+PASS HTMLTableElement interface: operation deleteTHead() 
+PASS HTMLTableElement interface: attribute tFoot 
+PASS HTMLTableElement interface: operation createTFoot() 
+PASS HTMLTableElement interface: operation deleteTFoot() 
+PASS HTMLTableElement interface: attribute tBodies 
+PASS HTMLTableElement interface: operation createTBody() 
+PASS HTMLTableElement interface: attribute rows 
+PASS HTMLTableElement interface: operation insertRow(long) 
+FAIL HTMLTableElement interface: operation deleteRow(long) assert_equals: property has wrong .length expected 1 but got 0
+FAIL HTMLTableElement interface: attribute sortable assert_true: The prototype object must have a property &quot;sortable&quot; expected true got false
+FAIL HTMLTableElement interface: operation stopSorting() assert_own_property: interface prototype object missing non-static operation expected property &quot;stopSorting&quot; missing
+PASS HTMLTableElement interface: attribute align 
+PASS HTMLTableElement interface: attribute border 
+PASS HTMLTableElement interface: attribute frame 
+PASS HTMLTableElement interface: attribute rules 
+PASS HTMLTableElement interface: attribute summary 
+PASS HTMLTableElement interface: attribute width 
+PASS HTMLTableElement interface: attribute bgColor 
+PASS HTMLTableElement interface: attribute cellPadding 
+PASS HTMLTableElement interface: attribute cellSpacing 
+PASS HTMLTableElement must be primary interface of document.createElement(&quot;table&quot;) 
+PASS Stringification of document.createElement(&quot;table&quot;) 
+PASS HTMLTableElement interface: document.createElement(&quot;table&quot;) must inherit property &quot;caption&quot; with the proper type (0) 
+PASS HTMLTableElement interface: document.createElement(&quot;table&quot;) must inherit property &quot;createCaption&quot; with the proper type (1) 
+PASS HTMLTableElement interface: document.createElement(&quot;table&quot;) must inherit property &quot;deleteCaption&quot; with the proper type (2) 
+PASS HTMLTableElement interface: document.createElement(&quot;table&quot;) must inherit property &quot;tHead&quot; with the proper type (3) 
+PASS HTMLTableElement interface: document.createElement(&quot;table&quot;) must inherit property &quot;createTHead&quot; with the proper type (4) 
+PASS HTMLTableElement interface: document.createElement(&quot;table&quot;) must inherit property &quot;deleteTHead&quot; with the proper type (5) 
+PASS HTMLTableElement interface: document.createElement(&quot;table&quot;) must inherit property &quot;tFoot&quot; with the proper type (6) 
+PASS HTMLTableElement interface: document.createElement(&quot;table&quot;) must inherit property &quot;createTFoot&quot; with the proper type (7) 
+PASS HTMLTableElement interface: document.createElement(&quot;table&quot;) must inherit property &quot;deleteTFoot&quot; with the proper type (8) 
+PASS HTMLTableElement interface: document.createElement(&quot;table&quot;) must inherit property &quot;tBodies&quot; with the proper type (9) 
+PASS HTMLTableElement interface: document.createElement(&quot;table&quot;) must inherit property &quot;createTBody&quot; with the proper type (10) 
+PASS HTMLTableElement interface: document.createElement(&quot;table&quot;) must inherit property &quot;rows&quot; with the proper type (11) 
+PASS HTMLTableElement interface: document.createElement(&quot;table&quot;) must inherit property &quot;insertRow&quot; with the proper type (12) 
+PASS HTMLTableElement interface: calling insertRow(long) on document.createElement(&quot;table&quot;) with too few arguments must throw TypeError 
+PASS HTMLTableElement interface: document.createElement(&quot;table&quot;) must inherit property &quot;deleteRow&quot; with the proper type (13) 
+FAIL HTMLTableElement interface: calling deleteRow(long) on document.createElement(&quot;table&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; threw object &quot;IndexSizeError (DOM Exception 1): The index is not in the...&quot; (&quot;IndexSizeError&quot;) expected object &quot;TypeError&quot; (&quot;TypeError&quot;)
+FAIL HTMLTableElement interface: document.createElement(&quot;table&quot;) must inherit property &quot;sortable&quot; with the proper type (14) assert_inherits: property &quot;sortable&quot; not found in prototype chain
+FAIL HTMLTableElement interface: document.createElement(&quot;table&quot;) must inherit property &quot;stopSorting&quot; with the proper type (15) assert_inherits: property &quot;stopSorting&quot; not found in prototype chain
+PASS HTMLTableElement interface: document.createElement(&quot;table&quot;) must inherit property &quot;align&quot; with the proper type (16) 
+PASS HTMLTableElement interface: document.createElement(&quot;table&quot;) must inherit property &quot;border&quot; with the proper type (17) 
+PASS HTMLTableElement interface: document.createElement(&quot;table&quot;) must inherit property &quot;frame&quot; with the proper type (18) 
+PASS HTMLTableElement interface: document.createElement(&quot;table&quot;) must inherit property &quot;rules&quot; with the proper type (19) 
+PASS HTMLTableElement interface: document.createElement(&quot;table&quot;) must inherit property &quot;summary&quot; with the proper type (20) 
+PASS HTMLTableElement interface: document.createElement(&quot;table&quot;) must inherit property &quot;width&quot; with the proper type (21) 
+PASS HTMLTableElement interface: document.createElement(&quot;table&quot;) must inherit property &quot;bgColor&quot; with the proper type (22) 
+PASS HTMLTableElement interface: document.createElement(&quot;table&quot;) must inherit property &quot;cellPadding&quot; with the proper type (23) 
+PASS HTMLTableElement interface: document.createElement(&quot;table&quot;) must inherit property &quot;cellSpacing&quot; with the proper type (24) 
+PASS HTMLTableCaptionElement interface: existence and properties of interface object 
+PASS HTMLTableCaptionElement interface object length 
+PASS HTMLTableCaptionElement interface object name 
+PASS HTMLTableCaptionElement interface: existence and properties of interface prototype object 
+PASS HTMLTableCaptionElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLTableCaptionElement interface: attribute align 
+PASS HTMLTableCaptionElement must be primary interface of document.createElement(&quot;caption&quot;) 
+PASS Stringification of document.createElement(&quot;caption&quot;) 
+PASS HTMLTableCaptionElement interface: document.createElement(&quot;caption&quot;) must inherit property &quot;align&quot; with the proper type (0) 
+PASS HTMLTableColElement interface: existence and properties of interface object 
+PASS HTMLTableColElement interface object length 
+PASS HTMLTableColElement interface object name 
+PASS HTMLTableColElement interface: existence and properties of interface prototype object 
+PASS HTMLTableColElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLTableColElement interface: attribute span 
+PASS HTMLTableColElement interface: attribute align 
+PASS HTMLTableColElement interface: attribute ch 
+PASS HTMLTableColElement interface: attribute chOff 
+PASS HTMLTableColElement interface: attribute vAlign 
+PASS HTMLTableColElement interface: attribute width 
+PASS HTMLTableColElement must be primary interface of document.createElement(&quot;colgroup&quot;) 
+PASS Stringification of document.createElement(&quot;colgroup&quot;) 
+PASS HTMLTableColElement interface: document.createElement(&quot;colgroup&quot;) must inherit property &quot;span&quot; with the proper type (0) 
+PASS HTMLTableColElement interface: document.createElement(&quot;colgroup&quot;) must inherit property &quot;align&quot; with the proper type (1) 
+PASS HTMLTableColElement interface: document.createElement(&quot;colgroup&quot;) must inherit property &quot;ch&quot; with the proper type (2) 
+PASS HTMLTableColElement interface: document.createElement(&quot;colgroup&quot;) must inherit property &quot;chOff&quot; with the proper type (3) 
+PASS HTMLTableColElement interface: document.createElement(&quot;colgroup&quot;) must inherit property &quot;vAlign&quot; with the proper type (4) 
+PASS HTMLTableColElement interface: document.createElement(&quot;colgroup&quot;) must inherit property &quot;width&quot; with the proper type (5) 
+PASS HTMLTableColElement must be primary interface of document.createElement(&quot;col&quot;) 
+PASS Stringification of document.createElement(&quot;col&quot;) 
+PASS HTMLTableColElement interface: document.createElement(&quot;col&quot;) must inherit property &quot;span&quot; with the proper type (0) 
+PASS HTMLTableColElement interface: document.createElement(&quot;col&quot;) must inherit property &quot;align&quot; with the proper type (1) 
+PASS HTMLTableColElement interface: document.createElement(&quot;col&quot;) must inherit property &quot;ch&quot; with the proper type (2) 
+PASS HTMLTableColElement interface: document.createElement(&quot;col&quot;) must inherit property &quot;chOff&quot; with the proper type (3) 
+PASS HTMLTableColElement interface: document.createElement(&quot;col&quot;) must inherit property &quot;vAlign&quot; with the proper type (4) 
+PASS HTMLTableColElement interface: document.createElement(&quot;col&quot;) must inherit property &quot;width&quot; with the proper type (5) 
+PASS HTMLTableSectionElement interface: existence and properties of interface object 
+PASS HTMLTableSectionElement interface object length 
+PASS HTMLTableSectionElement interface object name 
+PASS HTMLTableSectionElement interface: existence and properties of interface prototype object 
+PASS HTMLTableSectionElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLTableSectionElement interface: attribute rows 
+PASS HTMLTableSectionElement interface: operation insertRow(long) 
+FAIL HTMLTableSectionElement interface: operation deleteRow(long) assert_equals: property has wrong .length expected 1 but got 0
+PASS HTMLTableSectionElement interface: attribute align 
+PASS HTMLTableSectionElement interface: attribute ch 
+PASS HTMLTableSectionElement interface: attribute chOff 
+PASS HTMLTableSectionElement interface: attribute vAlign 
+PASS HTMLTableSectionElement must be primary interface of document.createElement(&quot;tbody&quot;) 
+PASS Stringification of document.createElement(&quot;tbody&quot;) 
+PASS HTMLTableSectionElement interface: document.createElement(&quot;tbody&quot;) must inherit property &quot;rows&quot; with the proper type (0) 
+PASS HTMLTableSectionElement interface: document.createElement(&quot;tbody&quot;) must inherit property &quot;insertRow&quot; with the proper type (1) 
+PASS HTMLTableSectionElement interface: calling insertRow(long) on document.createElement(&quot;tbody&quot;) with too few arguments must throw TypeError 
+PASS HTMLTableSectionElement interface: document.createElement(&quot;tbody&quot;) must inherit property &quot;deleteRow&quot; with the proper type (2) 
+FAIL HTMLTableSectionElement interface: calling deleteRow(long) on document.createElement(&quot;tbody&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; threw object &quot;IndexSizeError (DOM Exception 1): The index is not in the...&quot; (&quot;IndexSizeError&quot;) expected object &quot;TypeError&quot; (&quot;TypeError&quot;)
+PASS HTMLTableSectionElement interface: document.createElement(&quot;tbody&quot;) must inherit property &quot;align&quot; with the proper type (3) 
+PASS HTMLTableSectionElement interface: document.createElement(&quot;tbody&quot;) must inherit property &quot;ch&quot; with the proper type (4) 
+PASS HTMLTableSectionElement interface: document.createElement(&quot;tbody&quot;) must inherit property &quot;chOff&quot; with the proper type (5) 
+PASS HTMLTableSectionElement interface: document.createElement(&quot;tbody&quot;) must inherit property &quot;vAlign&quot; with the proper type (6) 
+PASS HTMLTableSectionElement must be primary interface of document.createElement(&quot;thead&quot;) 
+PASS Stringification of document.createElement(&quot;thead&quot;) 
+PASS HTMLTableSectionElement interface: document.createElement(&quot;thead&quot;) must inherit property &quot;rows&quot; with the proper type (0) 
+PASS HTMLTableSectionElement interface: document.createElement(&quot;thead&quot;) must inherit property &quot;insertRow&quot; with the proper type (1) 
+PASS HTMLTableSectionElement interface: calling insertRow(long) on document.createElement(&quot;thead&quot;) with too few arguments must throw TypeError 
+PASS HTMLTableSectionElement interface: document.createElement(&quot;thead&quot;) must inherit property &quot;deleteRow&quot; with the proper type (2) 
+FAIL HTMLTableSectionElement interface: calling deleteRow(long) on document.createElement(&quot;thead&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; threw object &quot;IndexSizeError (DOM Exception 1): The index is not in the...&quot; (&quot;IndexSizeError&quot;) expected object &quot;TypeError&quot; (&quot;TypeError&quot;)
+PASS HTMLTableSectionElement interface: document.createElement(&quot;thead&quot;) must inherit property &quot;align&quot; with the proper type (3) 
+PASS HTMLTableSectionElement interface: document.createElement(&quot;thead&quot;) must inherit property &quot;ch&quot; with the proper type (4) 
+PASS HTMLTableSectionElement interface: document.createElement(&quot;thead&quot;) must inherit property &quot;chOff&quot; with the proper type (5) 
+PASS HTMLTableSectionElement interface: document.createElement(&quot;thead&quot;) must inherit property &quot;vAlign&quot; with the proper type (6) 
+PASS HTMLTableSectionElement must be primary interface of document.createElement(&quot;tfoot&quot;) 
+PASS Stringification of document.createElement(&quot;tfoot&quot;) 
+PASS HTMLTableSectionElement interface: document.createElement(&quot;tfoot&quot;) must inherit property &quot;rows&quot; with the proper type (0) 
+PASS HTMLTableSectionElement interface: document.createElement(&quot;tfoot&quot;) must inherit property &quot;insertRow&quot; with the proper type (1) 
+PASS HTMLTableSectionElement interface: calling insertRow(long) on document.createElement(&quot;tfoot&quot;) with too few arguments must throw TypeError 
+PASS HTMLTableSectionElement interface: document.createElement(&quot;tfoot&quot;) must inherit property &quot;deleteRow&quot; with the proper type (2) 
+FAIL HTMLTableSectionElement interface: calling deleteRow(long) on document.createElement(&quot;tfoot&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; threw object &quot;IndexSizeError (DOM Exception 1): The index is not in the...&quot; (&quot;IndexSizeError&quot;) expected object &quot;TypeError&quot; (&quot;TypeError&quot;)
+PASS HTMLTableSectionElement interface: document.createElement(&quot;tfoot&quot;) must inherit property &quot;align&quot; with the proper type (3) 
+PASS HTMLTableSectionElement interface: document.createElement(&quot;tfoot&quot;) must inherit property &quot;ch&quot; with the proper type (4) 
+PASS HTMLTableSectionElement interface: document.createElement(&quot;tfoot&quot;) must inherit property &quot;chOff&quot; with the proper type (5) 
+PASS HTMLTableSectionElement interface: document.createElement(&quot;tfoot&quot;) must inherit property &quot;vAlign&quot; with the proper type (6) 
+PASS HTMLTableRowElement interface: existence and properties of interface object 
+PASS HTMLTableRowElement interface object length 
+PASS HTMLTableRowElement interface object name 
+PASS HTMLTableRowElement interface: existence and properties of interface prototype object 
+PASS HTMLTableRowElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLTableRowElement interface: attribute rowIndex 
+PASS HTMLTableRowElement interface: attribute sectionRowIndex 
+PASS HTMLTableRowElement interface: attribute cells 
+PASS HTMLTableRowElement interface: operation insertCell(long) 
+FAIL HTMLTableRowElement interface: operation deleteCell(long) assert_equals: property has wrong .length expected 1 but got 0
+PASS HTMLTableRowElement interface: attribute align 
+PASS HTMLTableRowElement interface: attribute ch 
+PASS HTMLTableRowElement interface: attribute chOff 
+PASS HTMLTableRowElement interface: attribute vAlign 
+PASS HTMLTableRowElement interface: attribute bgColor 
+PASS HTMLTableRowElement must be primary interface of document.createElement(&quot;tr&quot;) 
+PASS Stringification of document.createElement(&quot;tr&quot;) 
+PASS HTMLTableRowElement interface: document.createElement(&quot;tr&quot;) must inherit property &quot;rowIndex&quot; with the proper type (0) 
+PASS HTMLTableRowElement interface: document.createElement(&quot;tr&quot;) must inherit property &quot;sectionRowIndex&quot; with the proper type (1) 
+PASS HTMLTableRowElement interface: document.createElement(&quot;tr&quot;) must inherit property &quot;cells&quot; with the proper type (2) 
+PASS HTMLTableRowElement interface: document.createElement(&quot;tr&quot;) must inherit property &quot;insertCell&quot; with the proper type (3) 
+PASS HTMLTableRowElement interface: calling insertCell(long) on document.createElement(&quot;tr&quot;) with too few arguments must throw TypeError 
+PASS HTMLTableRowElement interface: document.createElement(&quot;tr&quot;) must inherit property &quot;deleteCell&quot; with the proper type (4) 
+FAIL HTMLTableRowElement interface: calling deleteCell(long) on document.createElement(&quot;tr&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; threw object &quot;IndexSizeError (DOM Exception 1): The index is not in the...&quot; (&quot;IndexSizeError&quot;) expected object &quot;TypeError&quot; (&quot;TypeError&quot;)
+PASS HTMLTableRowElement interface: document.createElement(&quot;tr&quot;) must inherit property &quot;align&quot; with the proper type (5) 
+PASS HTMLTableRowElement interface: document.createElement(&quot;tr&quot;) must inherit property &quot;ch&quot; with the proper type (6) 
+PASS HTMLTableRowElement interface: document.createElement(&quot;tr&quot;) must inherit property &quot;chOff&quot; with the proper type (7) 
+PASS HTMLTableRowElement interface: document.createElement(&quot;tr&quot;) must inherit property &quot;vAlign&quot; with the proper type (8) 
+PASS HTMLTableRowElement interface: document.createElement(&quot;tr&quot;) must inherit property &quot;bgColor&quot; with the proper type (9) 
+PASS HTMLTableCellElement interface: existence and properties of interface object 
+PASS HTMLTableCellElement interface object length 
+PASS HTMLTableCellElement interface object name 
+PASS HTMLTableCellElement interface: existence and properties of interface prototype object 
+PASS HTMLTableCellElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLTableCellElement interface: attribute colSpan 
+PASS HTMLTableCellElement interface: attribute rowSpan 
+PASS HTMLTableCellElement interface: attribute headers 
+PASS HTMLTableCellElement interface: attribute cellIndex 
+PASS HTMLTableCellElement interface: attribute scope 
+PASS HTMLTableCellElement interface: attribute abbr 
+PASS HTMLTableCellElement interface: attribute align 
+PASS HTMLTableCellElement interface: attribute axis 
+PASS HTMLTableCellElement interface: attribute height 
+PASS HTMLTableCellElement interface: attribute width 
+PASS HTMLTableCellElement interface: attribute ch 
+PASS HTMLTableCellElement interface: attribute chOff 
+PASS HTMLTableCellElement interface: attribute noWrap 
+PASS HTMLTableCellElement interface: attribute vAlign 
+PASS HTMLTableCellElement interface: attribute bgColor 
+PASS HTMLTableCellElement must be primary interface of document.createElement(&quot;td&quot;) 
+PASS Stringification of document.createElement(&quot;td&quot;) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;td&quot;) must inherit property &quot;colSpan&quot; with the proper type (0) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;td&quot;) must inherit property &quot;rowSpan&quot; with the proper type (1) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;td&quot;) must inherit property &quot;headers&quot; with the proper type (2) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;td&quot;) must inherit property &quot;cellIndex&quot; with the proper type (3) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;td&quot;) must inherit property &quot;scope&quot; with the proper type (4) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;td&quot;) must inherit property &quot;abbr&quot; with the proper type (5) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;td&quot;) must inherit property &quot;align&quot; with the proper type (6) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;td&quot;) must inherit property &quot;axis&quot; with the proper type (7) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;td&quot;) must inherit property &quot;height&quot; with the proper type (8) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;td&quot;) must inherit property &quot;width&quot; with the proper type (9) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;td&quot;) must inherit property &quot;ch&quot; with the proper type (10) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;td&quot;) must inherit property &quot;chOff&quot; with the proper type (11) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;td&quot;) must inherit property &quot;noWrap&quot; with the proper type (12) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;td&quot;) must inherit property &quot;vAlign&quot; with the proper type (13) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;td&quot;) must inherit property &quot;bgColor&quot; with the proper type (14) 
+PASS HTMLTableCellElement must be primary interface of document.createElement(&quot;th&quot;) 
+PASS Stringification of document.createElement(&quot;th&quot;) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;th&quot;) must inherit property &quot;colSpan&quot; with the proper type (0) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;th&quot;) must inherit property &quot;rowSpan&quot; with the proper type (1) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;th&quot;) must inherit property &quot;headers&quot; with the proper type (2) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;th&quot;) must inherit property &quot;cellIndex&quot; with the proper type (3) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;th&quot;) must inherit property &quot;scope&quot; with the proper type (4) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;th&quot;) must inherit property &quot;abbr&quot; with the proper type (5) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;th&quot;) must inherit property &quot;align&quot; with the proper type (6) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;th&quot;) must inherit property &quot;axis&quot; with the proper type (7) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;th&quot;) must inherit property &quot;height&quot; with the proper type (8) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;th&quot;) must inherit property &quot;width&quot; with the proper type (9) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;th&quot;) must inherit property &quot;ch&quot; with the proper type (10) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;th&quot;) must inherit property &quot;chOff&quot; with the proper type (11) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;th&quot;) must inherit property &quot;noWrap&quot; with the proper type (12) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;th&quot;) must inherit property &quot;vAlign&quot; with the proper type (13) 
+PASS HTMLTableCellElement interface: document.createElement(&quot;th&quot;) must inherit property &quot;bgColor&quot; with the proper type (14) 
+PASS HTMLFormElement interface: existence and properties of interface object 
+PASS HTMLFormElement interface object length 
+PASS HTMLFormElement interface object name 
+PASS HTMLFormElement interface: existence and properties of interface prototype object 
+PASS HTMLFormElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLFormElement interface: attribute acceptCharset 
+PASS HTMLFormElement interface: attribute action 
+PASS HTMLFormElement interface: attribute autocomplete 
+PASS HTMLFormElement interface: attribute enctype 
+PASS HTMLFormElement interface: attribute encoding 
+PASS HTMLFormElement interface: attribute method 
+PASS HTMLFormElement interface: attribute name 
+PASS HTMLFormElement interface: attribute noValidate 
+PASS HTMLFormElement interface: attribute target 
+PASS HTMLFormElement interface: attribute elements 
+PASS HTMLFormElement interface: attribute length 
+PASS HTMLFormElement interface: operation submit() 
+PASS HTMLFormElement interface: operation reset() 
+PASS HTMLFormElement interface: operation checkValidity() 
+FAIL HTMLFormElement interface: operation reportValidity() assert_own_property: interface prototype object missing non-static operation expected property &quot;reportValidity&quot; missing
+FAIL HTMLFormElement interface: operation requestAutocomplete() assert_own_property: interface prototype object missing non-static operation expected property &quot;requestAutocomplete&quot; missing
+PASS HTMLFormElement must be primary interface of document.createElement(&quot;form&quot;) 
+PASS Stringification of document.createElement(&quot;form&quot;) 
+PASS HTMLFormElement interface: document.createElement(&quot;form&quot;) must inherit property &quot;acceptCharset&quot; with the proper type (0) 
+PASS HTMLFormElement interface: document.createElement(&quot;form&quot;) must inherit property &quot;action&quot; with the proper type (1) 
+PASS HTMLFormElement interface: document.createElement(&quot;form&quot;) must inherit property &quot;autocomplete&quot; with the proper type (2) 
+PASS HTMLFormElement interface: document.createElement(&quot;form&quot;) must inherit property &quot;enctype&quot; with the proper type (3) 
+PASS HTMLFormElement interface: document.createElement(&quot;form&quot;) must inherit property &quot;encoding&quot; with the proper type (4) 
+PASS HTMLFormElement interface: document.createElement(&quot;form&quot;) must inherit property &quot;method&quot; with the proper type (5) 
+PASS HTMLFormElement interface: document.createElement(&quot;form&quot;) must inherit property &quot;name&quot; with the proper type (6) 
+PASS HTMLFormElement interface: document.createElement(&quot;form&quot;) must inherit property &quot;noValidate&quot; with the proper type (7) 
+PASS HTMLFormElement interface: document.createElement(&quot;form&quot;) must inherit property &quot;target&quot; with the proper type (8) 
+PASS HTMLFormElement interface: document.createElement(&quot;form&quot;) must inherit property &quot;elements&quot; with the proper type (9) 
+PASS HTMLFormElement interface: document.createElement(&quot;form&quot;) must inherit property &quot;length&quot; with the proper type (10) 
+PASS HTMLFormElement interface: document.createElement(&quot;form&quot;) must inherit property &quot;submit&quot; with the proper type (13) 
+PASS HTMLFormElement interface: document.createElement(&quot;form&quot;) must inherit property &quot;reset&quot; with the proper type (14) 
+PASS HTMLFormElement interface: document.createElement(&quot;form&quot;) must inherit property &quot;checkValidity&quot; with the proper type (15) 
+FAIL HTMLFormElement interface: document.createElement(&quot;form&quot;) must inherit property &quot;reportValidity&quot; with the proper type (16) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+FAIL HTMLFormElement interface: document.createElement(&quot;form&quot;) must inherit property &quot;requestAutocomplete&quot; with the proper type (17) assert_inherits: property &quot;requestAutocomplete&quot; not found in prototype chain
+PASS HTMLLabelElement interface: existence and properties of interface object 
+PASS HTMLLabelElement interface object length 
+PASS HTMLLabelElement interface object name 
+PASS HTMLLabelElement interface: existence and properties of interface prototype object 
+PASS HTMLLabelElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLLabelElement interface: attribute form 
+PASS HTMLLabelElement interface: attribute htmlFor 
+PASS HTMLLabelElement interface: attribute control 
+PASS HTMLLabelElement must be primary interface of document.createElement(&quot;label&quot;) 
+PASS Stringification of document.createElement(&quot;label&quot;) 
+PASS HTMLLabelElement interface: document.createElement(&quot;label&quot;) must inherit property &quot;form&quot; with the proper type (0) 
+PASS HTMLLabelElement interface: document.createElement(&quot;label&quot;) must inherit property &quot;htmlFor&quot; with the proper type (1) 
+PASS HTMLLabelElement interface: document.createElement(&quot;label&quot;) must inherit property &quot;control&quot; with the proper type (2) 
+PASS HTMLInputElement interface: existence and properties of interface object 
+PASS HTMLInputElement interface object length 
+PASS HTMLInputElement interface object name 
+PASS HTMLInputElement interface: existence and properties of interface prototype object 
+PASS HTMLInputElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLInputElement interface: attribute accept 
+PASS HTMLInputElement interface: attribute alt 
+PASS HTMLInputElement interface: attribute autocomplete 
+PASS HTMLInputElement interface: attribute autofocus 
+PASS HTMLInputElement interface: attribute defaultChecked 
+PASS HTMLInputElement interface: attribute checked 
+PASS HTMLInputElement interface: attribute dirName 
+PASS HTMLInputElement interface: attribute disabled 
+PASS HTMLInputElement interface: attribute form 
+FAIL HTMLInputElement interface: attribute files assert_equals: setter must be undefined for readonly attributes expected (undefined) undefined but got (function) function &quot;function files() {
+    [native code]
+}&quot;
+PASS HTMLInputElement interface: attribute formAction 
+PASS HTMLInputElement interface: attribute formEnctype 
+PASS HTMLInputElement interface: attribute formMethod 
+PASS HTMLInputElement interface: attribute formNoValidate 
+PASS HTMLInputElement interface: attribute formTarget 
+PASS HTMLInputElement interface: attribute height 
+PASS HTMLInputElement interface: attribute indeterminate 
+FAIL HTMLInputElement interface: attribute inputMode assert_true: The prototype object must have a property &quot;inputMode&quot; expected true got false
+FAIL HTMLInputElement interface: attribute list assert_true: The prototype object must have a property &quot;list&quot; expected true got false
+PASS HTMLInputElement interface: attribute max 
+PASS HTMLInputElement interface: attribute maxLength 
+PASS HTMLInputElement interface: attribute min 
+FAIL HTMLInputElement interface: attribute minLength assert_true: The prototype object must have a property &quot;minLength&quot; expected true got false
+PASS HTMLInputElement interface: attribute multiple 
+PASS HTMLInputElement interface: attribute name 
+PASS HTMLInputElement interface: attribute pattern 
+PASS HTMLInputElement interface: attribute placeholder 
+PASS HTMLInputElement interface: attribute readOnly 
+PASS HTMLInputElement interface: attribute required 
+PASS HTMLInputElement interface: attribute size 
+PASS HTMLInputElement interface: attribute src 
+PASS HTMLInputElement interface: attribute step 
+PASS HTMLInputElement interface: attribute type 
+PASS HTMLInputElement interface: attribute defaultValue 
+PASS HTMLInputElement interface: attribute value 
+PASS HTMLInputElement interface: attribute valueAsDate 
+PASS HTMLInputElement interface: attribute valueAsNumber 
+FAIL HTMLInputElement interface: attribute valueLow assert_true: The prototype object must have a property &quot;valueLow&quot; expected true got false
+FAIL HTMLInputElement interface: attribute valueHigh assert_true: The prototype object must have a property &quot;valueHigh&quot; expected true got false
+PASS HTMLInputElement interface: attribute width 
+PASS HTMLInputElement interface: operation stepUp(long) 
+PASS HTMLInputElement interface: operation stepDown(long) 
+PASS HTMLInputElement interface: attribute willValidate 
+PASS HTMLInputElement interface: attribute validity 
+PASS HTMLInputElement interface: attribute validationMessage 
+PASS HTMLInputElement interface: operation checkValidity() 
+FAIL HTMLInputElement interface: operation reportValidity() assert_own_property: interface prototype object missing non-static operation expected property &quot;reportValidity&quot; missing
+PASS HTMLInputElement interface: operation setCustomValidity(DOMString) 
+PASS HTMLInputElement interface: attribute labels 
+PASS HTMLInputElement interface: operation select() 
+PASS HTMLInputElement interface: attribute selectionStart 
+PASS HTMLInputElement interface: attribute selectionEnd 
+PASS HTMLInputElement interface: attribute selectionDirection 
+PASS HTMLInputElement interface: operation setRangeText(DOMString) 
+PASS HTMLInputElement interface: operation setRangeText(DOMString,unsigned long,unsigned long,SelectionMode) 
+FAIL HTMLInputElement interface: operation setSelectionRange(unsigned long,unsigned long,DOMString) assert_equals: property has wrong .length expected 2 but got 0
+PASS HTMLInputElement interface: attribute align 
+PASS HTMLInputElement interface: attribute useMap 
+PASS HTMLInputElement must be primary interface of document.createElement(&quot;input&quot;) 
+PASS Stringification of document.createElement(&quot;input&quot;) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;accept&quot; with the proper type (0) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;alt&quot; with the proper type (1) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;autocomplete&quot; with the proper type (2) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;autofocus&quot; with the proper type (3) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;defaultChecked&quot; with the proper type (4) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;checked&quot; with the proper type (5) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;dirName&quot; with the proper type (6) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;disabled&quot; with the proper type (7) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;form&quot; with the proper type (8) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;files&quot; with the proper type (9) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;formAction&quot; with the proper type (10) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;formEnctype&quot; with the proper type (11) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;formMethod&quot; with the proper type (12) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;formNoValidate&quot; with the proper type (13) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;formTarget&quot; with the proper type (14) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;height&quot; with the proper type (15) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;indeterminate&quot; with the proper type (16) 
+FAIL HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;inputMode&quot; with the proper type (17) assert_inherits: property &quot;inputMode&quot; not found in prototype chain
+FAIL HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;list&quot; with the proper type (18) assert_inherits: property &quot;list&quot; not found in prototype chain
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;max&quot; with the proper type (19) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;maxLength&quot; with the proper type (20) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;min&quot; with the proper type (21) 
+FAIL HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;minLength&quot; with the proper type (22) assert_inherits: property &quot;minLength&quot; not found in prototype chain
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;multiple&quot; with the proper type (23) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;name&quot; with the proper type (24) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;pattern&quot; with the proper type (25) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;placeholder&quot; with the proper type (26) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;readOnly&quot; with the proper type (27) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;required&quot; with the proper type (28) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;size&quot; with the proper type (29) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;src&quot; with the proper type (30) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;step&quot; with the proper type (31) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;type&quot; with the proper type (32) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;defaultValue&quot; with the proper type (33) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;value&quot; with the proper type (34) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;valueAsDate&quot; with the proper type (35) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;valueAsNumber&quot; with the proper type (36) 
+FAIL HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;valueLow&quot; with the proper type (37) assert_inherits: property &quot;valueLow&quot; not found in prototype chain
+FAIL HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;valueHigh&quot; with the proper type (38) assert_inherits: property &quot;valueHigh&quot; not found in prototype chain
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;width&quot; with the proper type (39) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;stepUp&quot; with the proper type (40) 
+PASS HTMLInputElement interface: calling stepUp(long) on document.createElement(&quot;input&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;stepDown&quot; with the proper type (41) 
+PASS HTMLInputElement interface: calling stepDown(long) on document.createElement(&quot;input&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;willValidate&quot; with the proper type (42) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;validity&quot; with the proper type (43) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;validationMessage&quot; with the proper type (44) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;checkValidity&quot; with the proper type (45) 
+FAIL HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;reportValidity&quot; with the proper type (46) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (47) 
+PASS HTMLInputElement interface: calling setCustomValidity(DOMString) on document.createElement(&quot;input&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;labels&quot; with the proper type (48) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;select&quot; with the proper type (49) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;selectionStart&quot; with the proper type (50) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;selectionEnd&quot; with the proper type (51) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;selectionDirection&quot; with the proper type (52) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;setRangeText&quot; with the proper type (53) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString) on document.createElement(&quot;input&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;setRangeText&quot; with the proper type (54) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString,unsigned long,unsigned long,SelectionMode) on document.createElement(&quot;input&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;setSelectionRange&quot; with the proper type (55) 
+FAIL HTMLInputElement interface: calling setSelectionRange(unsigned long,unsigned long,DOMString) on document.createElement(&quot;input&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;align&quot; with the proper type (56) 
+PASS HTMLInputElement interface: document.createElement(&quot;input&quot;) must inherit property &quot;useMap&quot; with the proper type (57) 
+PASS HTMLInputElement must be primary interface of createInput(&quot;text&quot;) 
+PASS Stringification of createInput(&quot;text&quot;) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;accept&quot; with the proper type (0) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;alt&quot; with the proper type (1) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;autocomplete&quot; with the proper type (2) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;autofocus&quot; with the proper type (3) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;defaultChecked&quot; with the proper type (4) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;checked&quot; with the proper type (5) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;dirName&quot; with the proper type (6) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;disabled&quot; with the proper type (7) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;form&quot; with the proper type (8) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;files&quot; with the proper type (9) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;formAction&quot; with the proper type (10) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;formEnctype&quot; with the proper type (11) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;formMethod&quot; with the proper type (12) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;formNoValidate&quot; with the proper type (13) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;formTarget&quot; with the proper type (14) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;height&quot; with the proper type (15) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;indeterminate&quot; with the proper type (16) 
+FAIL HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;inputMode&quot; with the proper type (17) assert_inherits: property &quot;inputMode&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;list&quot; with the proper type (18) assert_inherits: property &quot;list&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;max&quot; with the proper type (19) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;maxLength&quot; with the proper type (20) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;min&quot; with the proper type (21) 
+FAIL HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;minLength&quot; with the proper type (22) assert_inherits: property &quot;minLength&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;multiple&quot; with the proper type (23) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;name&quot; with the proper type (24) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;pattern&quot; with the proper type (25) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;placeholder&quot; with the proper type (26) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;readOnly&quot; with the proper type (27) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;required&quot; with the proper type (28) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;size&quot; with the proper type (29) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;src&quot; with the proper type (30) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;step&quot; with the proper type (31) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;type&quot; with the proper type (32) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;defaultValue&quot; with the proper type (33) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;value&quot; with the proper type (34) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;valueAsDate&quot; with the proper type (35) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;valueAsNumber&quot; with the proper type (36) 
+FAIL HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;valueLow&quot; with the proper type (37) assert_inherits: property &quot;valueLow&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;valueHigh&quot; with the proper type (38) assert_inherits: property &quot;valueHigh&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;width&quot; with the proper type (39) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;stepUp&quot; with the proper type (40) 
+PASS HTMLInputElement interface: calling stepUp(long) on createInput(&quot;text&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;stepDown&quot; with the proper type (41) 
+PASS HTMLInputElement interface: calling stepDown(long) on createInput(&quot;text&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;willValidate&quot; with the proper type (42) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;validity&quot; with the proper type (43) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;validationMessage&quot; with the proper type (44) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;checkValidity&quot; with the proper type (45) 
+FAIL HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;reportValidity&quot; with the proper type (46) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (47) 
+PASS HTMLInputElement interface: calling setCustomValidity(DOMString) on createInput(&quot;text&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;labels&quot; with the proper type (48) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;select&quot; with the proper type (49) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;selectionStart&quot; with the proper type (50) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;selectionEnd&quot; with the proper type (51) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;selectionDirection&quot; with the proper type (52) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;setRangeText&quot; with the proper type (53) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString) on createInput(&quot;text&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;setRangeText&quot; with the proper type (54) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString,unsigned long,unsigned long,SelectionMode) on createInput(&quot;text&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;setSelectionRange&quot; with the proper type (55) 
+FAIL HTMLInputElement interface: calling setSelectionRange(unsigned long,unsigned long,DOMString) on createInput(&quot;text&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;align&quot; with the proper type (56) 
+PASS HTMLInputElement interface: createInput(&quot;text&quot;) must inherit property &quot;useMap&quot; with the proper type (57) 
+PASS HTMLInputElement must be primary interface of createInput(&quot;hidden&quot;) 
+PASS Stringification of createInput(&quot;hidden&quot;) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;accept&quot; with the proper type (0) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;alt&quot; with the proper type (1) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;autocomplete&quot; with the proper type (2) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;autofocus&quot; with the proper type (3) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;defaultChecked&quot; with the proper type (4) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;checked&quot; with the proper type (5) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;dirName&quot; with the proper type (6) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;disabled&quot; with the proper type (7) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;form&quot; with the proper type (8) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;files&quot; with the proper type (9) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;formAction&quot; with the proper type (10) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;formEnctype&quot; with the proper type (11) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;formMethod&quot; with the proper type (12) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;formNoValidate&quot; with the proper type (13) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;formTarget&quot; with the proper type (14) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;height&quot; with the proper type (15) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;indeterminate&quot; with the proper type (16) 
+FAIL HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;inputMode&quot; with the proper type (17) assert_inherits: property &quot;inputMode&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;list&quot; with the proper type (18) assert_inherits: property &quot;list&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;max&quot; with the proper type (19) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;maxLength&quot; with the proper type (20) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;min&quot; with the proper type (21) 
+FAIL HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;minLength&quot; with the proper type (22) assert_inherits: property &quot;minLength&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;multiple&quot; with the proper type (23) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;name&quot; with the proper type (24) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;pattern&quot; with the proper type (25) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;placeholder&quot; with the proper type (26) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;readOnly&quot; with the proper type (27) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;required&quot; with the proper type (28) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;size&quot; with the proper type (29) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;src&quot; with the proper type (30) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;step&quot; with the proper type (31) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;type&quot; with the proper type (32) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;defaultValue&quot; with the proper type (33) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;value&quot; with the proper type (34) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;valueAsDate&quot; with the proper type (35) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;valueAsNumber&quot; with the proper type (36) 
+FAIL HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;valueLow&quot; with the proper type (37) assert_inherits: property &quot;valueLow&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;valueHigh&quot; with the proper type (38) assert_inherits: property &quot;valueHigh&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;width&quot; with the proper type (39) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;stepUp&quot; with the proper type (40) 
+PASS HTMLInputElement interface: calling stepUp(long) on createInput(&quot;hidden&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;stepDown&quot; with the proper type (41) 
+PASS HTMLInputElement interface: calling stepDown(long) on createInput(&quot;hidden&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;willValidate&quot; with the proper type (42) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;validity&quot; with the proper type (43) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;validationMessage&quot; with the proper type (44) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;checkValidity&quot; with the proper type (45) 
+FAIL HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;reportValidity&quot; with the proper type (46) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (47) 
+PASS HTMLInputElement interface: calling setCustomValidity(DOMString) on createInput(&quot;hidden&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;labels&quot; with the proper type (48) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;select&quot; with the proper type (49) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;selectionStart&quot; with the proper type (50) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;selectionEnd&quot; with the proper type (51) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;selectionDirection&quot; with the proper type (52) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;setRangeText&quot; with the proper type (53) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString) on createInput(&quot;hidden&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;setRangeText&quot; with the proper type (54) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString,unsigned long,unsigned long,SelectionMode) on createInput(&quot;hidden&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;setSelectionRange&quot; with the proper type (55) 
+PASS HTMLInputElement interface: calling setSelectionRange(unsigned long,unsigned long,DOMString) on createInput(&quot;hidden&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;align&quot; with the proper type (56) 
+PASS HTMLInputElement interface: createInput(&quot;hidden&quot;) must inherit property &quot;useMap&quot; with the proper type (57) 
+PASS HTMLInputElement must be primary interface of createInput(&quot;search&quot;) 
+PASS Stringification of createInput(&quot;search&quot;) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;accept&quot; with the proper type (0) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;alt&quot; with the proper type (1) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;autocomplete&quot; with the proper type (2) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;autofocus&quot; with the proper type (3) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;defaultChecked&quot; with the proper type (4) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;checked&quot; with the proper type (5) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;dirName&quot; with the proper type (6) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;disabled&quot; with the proper type (7) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;form&quot; with the proper type (8) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;files&quot; with the proper type (9) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;formAction&quot; with the proper type (10) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;formEnctype&quot; with the proper type (11) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;formMethod&quot; with the proper type (12) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;formNoValidate&quot; with the proper type (13) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;formTarget&quot; with the proper type (14) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;height&quot; with the proper type (15) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;indeterminate&quot; with the proper type (16) 
+FAIL HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;inputMode&quot; with the proper type (17) assert_inherits: property &quot;inputMode&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;list&quot; with the proper type (18) assert_inherits: property &quot;list&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;max&quot; with the proper type (19) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;maxLength&quot; with the proper type (20) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;min&quot; with the proper type (21) 
+FAIL HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;minLength&quot; with the proper type (22) assert_inherits: property &quot;minLength&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;multiple&quot; with the proper type (23) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;name&quot; with the proper type (24) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;pattern&quot; with the proper type (25) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;placeholder&quot; with the proper type (26) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;readOnly&quot; with the proper type (27) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;required&quot; with the proper type (28) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;size&quot; with the proper type (29) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;src&quot; with the proper type (30) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;step&quot; with the proper type (31) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;type&quot; with the proper type (32) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;defaultValue&quot; with the proper type (33) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;value&quot; with the proper type (34) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;valueAsDate&quot; with the proper type (35) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;valueAsNumber&quot; with the proper type (36) 
+FAIL HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;valueLow&quot; with the proper type (37) assert_inherits: property &quot;valueLow&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;valueHigh&quot; with the proper type (38) assert_inherits: property &quot;valueHigh&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;width&quot; with the proper type (39) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;stepUp&quot; with the proper type (40) 
+PASS HTMLInputElement interface: calling stepUp(long) on createInput(&quot;search&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;stepDown&quot; with the proper type (41) 
+PASS HTMLInputElement interface: calling stepDown(long) on createInput(&quot;search&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;willValidate&quot; with the proper type (42) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;validity&quot; with the proper type (43) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;validationMessage&quot; with the proper type (44) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;checkValidity&quot; with the proper type (45) 
+FAIL HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;reportValidity&quot; with the proper type (46) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (47) 
+PASS HTMLInputElement interface: calling setCustomValidity(DOMString) on createInput(&quot;search&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;labels&quot; with the proper type (48) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;select&quot; with the proper type (49) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;selectionStart&quot; with the proper type (50) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;selectionEnd&quot; with the proper type (51) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;selectionDirection&quot; with the proper type (52) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;setRangeText&quot; with the proper type (53) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString) on createInput(&quot;search&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;setRangeText&quot; with the proper type (54) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString,unsigned long,unsigned long,SelectionMode) on createInput(&quot;search&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;setSelectionRange&quot; with the proper type (55) 
+FAIL HTMLInputElement interface: calling setSelectionRange(unsigned long,unsigned long,DOMString) on createInput(&quot;search&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;align&quot; with the proper type (56) 
+PASS HTMLInputElement interface: createInput(&quot;search&quot;) must inherit property &quot;useMap&quot; with the proper type (57) 
+PASS HTMLInputElement must be primary interface of createInput(&quot;tel&quot;) 
+PASS Stringification of createInput(&quot;tel&quot;) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;accept&quot; with the proper type (0) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;alt&quot; with the proper type (1) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;autocomplete&quot; with the proper type (2) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;autofocus&quot; with the proper type (3) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;defaultChecked&quot; with the proper type (4) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;checked&quot; with the proper type (5) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;dirName&quot; with the proper type (6) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;disabled&quot; with the proper type (7) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;form&quot; with the proper type (8) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;files&quot; with the proper type (9) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;formAction&quot; with the proper type (10) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;formEnctype&quot; with the proper type (11) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;formMethod&quot; with the proper type (12) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;formNoValidate&quot; with the proper type (13) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;formTarget&quot; with the proper type (14) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;height&quot; with the proper type (15) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;indeterminate&quot; with the proper type (16) 
+FAIL HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;inputMode&quot; with the proper type (17) assert_inherits: property &quot;inputMode&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;list&quot; with the proper type (18) assert_inherits: property &quot;list&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;max&quot; with the proper type (19) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;maxLength&quot; with the proper type (20) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;min&quot; with the proper type (21) 
+FAIL HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;minLength&quot; with the proper type (22) assert_inherits: property &quot;minLength&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;multiple&quot; with the proper type (23) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;name&quot; with the proper type (24) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;pattern&quot; with the proper type (25) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;placeholder&quot; with the proper type (26) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;readOnly&quot; with the proper type (27) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;required&quot; with the proper type (28) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;size&quot; with the proper type (29) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;src&quot; with the proper type (30) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;step&quot; with the proper type (31) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;type&quot; with the proper type (32) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;defaultValue&quot; with the proper type (33) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;value&quot; with the proper type (34) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;valueAsDate&quot; with the proper type (35) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;valueAsNumber&quot; with the proper type (36) 
+FAIL HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;valueLow&quot; with the proper type (37) assert_inherits: property &quot;valueLow&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;valueHigh&quot; with the proper type (38) assert_inherits: property &quot;valueHigh&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;width&quot; with the proper type (39) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;stepUp&quot; with the proper type (40) 
+PASS HTMLInputElement interface: calling stepUp(long) on createInput(&quot;tel&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;stepDown&quot; with the proper type (41) 
+PASS HTMLInputElement interface: calling stepDown(long) on createInput(&quot;tel&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;willValidate&quot; with the proper type (42) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;validity&quot; with the proper type (43) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;validationMessage&quot; with the proper type (44) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;checkValidity&quot; with the proper type (45) 
+FAIL HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;reportValidity&quot; with the proper type (46) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (47) 
+PASS HTMLInputElement interface: calling setCustomValidity(DOMString) on createInput(&quot;tel&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;labels&quot; with the proper type (48) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;select&quot; with the proper type (49) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;selectionStart&quot; with the proper type (50) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;selectionEnd&quot; with the proper type (51) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;selectionDirection&quot; with the proper type (52) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;setRangeText&quot; with the proper type (53) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString) on createInput(&quot;tel&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;setRangeText&quot; with the proper type (54) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString,unsigned long,unsigned long,SelectionMode) on createInput(&quot;tel&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;setSelectionRange&quot; with the proper type (55) 
+FAIL HTMLInputElement interface: calling setSelectionRange(unsigned long,unsigned long,DOMString) on createInput(&quot;tel&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;align&quot; with the proper type (56) 
+PASS HTMLInputElement interface: createInput(&quot;tel&quot;) must inherit property &quot;useMap&quot; with the proper type (57) 
+PASS HTMLInputElement must be primary interface of createInput(&quot;url&quot;) 
+PASS Stringification of createInput(&quot;url&quot;) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;accept&quot; with the proper type (0) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;alt&quot; with the proper type (1) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;autocomplete&quot; with the proper type (2) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;autofocus&quot; with the proper type (3) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;defaultChecked&quot; with the proper type (4) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;checked&quot; with the proper type (5) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;dirName&quot; with the proper type (6) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;disabled&quot; with the proper type (7) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;form&quot; with the proper type (8) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;files&quot; with the proper type (9) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;formAction&quot; with the proper type (10) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;formEnctype&quot; with the proper type (11) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;formMethod&quot; with the proper type (12) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;formNoValidate&quot; with the proper type (13) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;formTarget&quot; with the proper type (14) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;height&quot; with the proper type (15) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;indeterminate&quot; with the proper type (16) 
+FAIL HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;inputMode&quot; with the proper type (17) assert_inherits: property &quot;inputMode&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;list&quot; with the proper type (18) assert_inherits: property &quot;list&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;max&quot; with the proper type (19) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;maxLength&quot; with the proper type (20) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;min&quot; with the proper type (21) 
+FAIL HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;minLength&quot; with the proper type (22) assert_inherits: property &quot;minLength&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;multiple&quot; with the proper type (23) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;name&quot; with the proper type (24) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;pattern&quot; with the proper type (25) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;placeholder&quot; with the proper type (26) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;readOnly&quot; with the proper type (27) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;required&quot; with the proper type (28) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;size&quot; with the proper type (29) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;src&quot; with the proper type (30) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;step&quot; with the proper type (31) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;type&quot; with the proper type (32) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;defaultValue&quot; with the proper type (33) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;value&quot; with the proper type (34) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;valueAsDate&quot; with the proper type (35) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;valueAsNumber&quot; with the proper type (36) 
+FAIL HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;valueLow&quot; with the proper type (37) assert_inherits: property &quot;valueLow&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;valueHigh&quot; with the proper type (38) assert_inherits: property &quot;valueHigh&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;width&quot; with the proper type (39) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;stepUp&quot; with the proper type (40) 
+PASS HTMLInputElement interface: calling stepUp(long) on createInput(&quot;url&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;stepDown&quot; with the proper type (41) 
+PASS HTMLInputElement interface: calling stepDown(long) on createInput(&quot;url&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;willValidate&quot; with the proper type (42) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;validity&quot; with the proper type (43) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;validationMessage&quot; with the proper type (44) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;checkValidity&quot; with the proper type (45) 
+FAIL HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;reportValidity&quot; with the proper type (46) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (47) 
+PASS HTMLInputElement interface: calling setCustomValidity(DOMString) on createInput(&quot;url&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;labels&quot; with the proper type (48) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;select&quot; with the proper type (49) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;selectionStart&quot; with the proper type (50) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;selectionEnd&quot; with the proper type (51) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;selectionDirection&quot; with the proper type (52) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;setRangeText&quot; with the proper type (53) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString) on createInput(&quot;url&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;setRangeText&quot; with the proper type (54) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString,unsigned long,unsigned long,SelectionMode) on createInput(&quot;url&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;setSelectionRange&quot; with the proper type (55) 
+FAIL HTMLInputElement interface: calling setSelectionRange(unsigned long,unsigned long,DOMString) on createInput(&quot;url&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;align&quot; with the proper type (56) 
+PASS HTMLInputElement interface: createInput(&quot;url&quot;) must inherit property &quot;useMap&quot; with the proper type (57) 
+PASS HTMLInputElement must be primary interface of createInput(&quot;email&quot;) 
+PASS Stringification of createInput(&quot;email&quot;) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;accept&quot; with the proper type (0) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;alt&quot; with the proper type (1) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;autocomplete&quot; with the proper type (2) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;autofocus&quot; with the proper type (3) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;defaultChecked&quot; with the proper type (4) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;checked&quot; with the proper type (5) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;dirName&quot; with the proper type (6) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;disabled&quot; with the proper type (7) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;form&quot; with the proper type (8) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;files&quot; with the proper type (9) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;formAction&quot; with the proper type (10) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;formEnctype&quot; with the proper type (11) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;formMethod&quot; with the proper type (12) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;formNoValidate&quot; with the proper type (13) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;formTarget&quot; with the proper type (14) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;height&quot; with the proper type (15) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;indeterminate&quot; with the proper type (16) 
+FAIL HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;inputMode&quot; with the proper type (17) assert_inherits: property &quot;inputMode&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;list&quot; with the proper type (18) assert_inherits: property &quot;list&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;max&quot; with the proper type (19) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;maxLength&quot; with the proper type (20) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;min&quot; with the proper type (21) 
+FAIL HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;minLength&quot; with the proper type (22) assert_inherits: property &quot;minLength&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;multiple&quot; with the proper type (23) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;name&quot; with the proper type (24) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;pattern&quot; with the proper type (25) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;placeholder&quot; with the proper type (26) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;readOnly&quot; with the proper type (27) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;required&quot; with the proper type (28) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;size&quot; with the proper type (29) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;src&quot; with the proper type (30) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;step&quot; with the proper type (31) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;type&quot; with the proper type (32) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;defaultValue&quot; with the proper type (33) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;value&quot; with the proper type (34) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;valueAsDate&quot; with the proper type (35) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;valueAsNumber&quot; with the proper type (36) 
+FAIL HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;valueLow&quot; with the proper type (37) assert_inherits: property &quot;valueLow&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;valueHigh&quot; with the proper type (38) assert_inherits: property &quot;valueHigh&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;width&quot; with the proper type (39) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;stepUp&quot; with the proper type (40) 
+PASS HTMLInputElement interface: calling stepUp(long) on createInput(&quot;email&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;stepDown&quot; with the proper type (41) 
+PASS HTMLInputElement interface: calling stepDown(long) on createInput(&quot;email&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;willValidate&quot; with the proper type (42) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;validity&quot; with the proper type (43) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;validationMessage&quot; with the proper type (44) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;checkValidity&quot; with the proper type (45) 
+FAIL HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;reportValidity&quot; with the proper type (46) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (47) 
+PASS HTMLInputElement interface: calling setCustomValidity(DOMString) on createInput(&quot;email&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;labels&quot; with the proper type (48) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;select&quot; with the proper type (49) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;selectionStart&quot; with the proper type (50) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;selectionEnd&quot; with the proper type (51) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;selectionDirection&quot; with the proper type (52) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;setRangeText&quot; with the proper type (53) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString) on createInput(&quot;email&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;setRangeText&quot; with the proper type (54) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString,unsigned long,unsigned long,SelectionMode) on createInput(&quot;email&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;setSelectionRange&quot; with the proper type (55) 
+FAIL HTMLInputElement interface: calling setSelectionRange(unsigned long,unsigned long,DOMString) on createInput(&quot;email&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;align&quot; with the proper type (56) 
+PASS HTMLInputElement interface: createInput(&quot;email&quot;) must inherit property &quot;useMap&quot; with the proper type (57) 
+PASS HTMLInputElement must be primary interface of createInput(&quot;password&quot;) 
+PASS Stringification of createInput(&quot;password&quot;) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;accept&quot; with the proper type (0) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;alt&quot; with the proper type (1) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;autocomplete&quot; with the proper type (2) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;autofocus&quot; with the proper type (3) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;defaultChecked&quot; with the proper type (4) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;checked&quot; with the proper type (5) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;dirName&quot; with the proper type (6) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;disabled&quot; with the proper type (7) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;form&quot; with the proper type (8) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;files&quot; with the proper type (9) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;formAction&quot; with the proper type (10) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;formEnctype&quot; with the proper type (11) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;formMethod&quot; with the proper type (12) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;formNoValidate&quot; with the proper type (13) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;formTarget&quot; with the proper type (14) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;height&quot; with the proper type (15) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;indeterminate&quot; with the proper type (16) 
+FAIL HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;inputMode&quot; with the proper type (17) assert_inherits: property &quot;inputMode&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;list&quot; with the proper type (18) assert_inherits: property &quot;list&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;max&quot; with the proper type (19) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;maxLength&quot; with the proper type (20) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;min&quot; with the proper type (21) 
+FAIL HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;minLength&quot; with the proper type (22) assert_inherits: property &quot;minLength&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;multiple&quot; with the proper type (23) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;name&quot; with the proper type (24) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;pattern&quot; with the proper type (25) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;placeholder&quot; with the proper type (26) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;readOnly&quot; with the proper type (27) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;required&quot; with the proper type (28) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;size&quot; with the proper type (29) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;src&quot; with the proper type (30) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;step&quot; with the proper type (31) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;type&quot; with the proper type (32) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;defaultValue&quot; with the proper type (33) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;value&quot; with the proper type (34) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;valueAsDate&quot; with the proper type (35) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;valueAsNumber&quot; with the proper type (36) 
+FAIL HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;valueLow&quot; with the proper type (37) assert_inherits: property &quot;valueLow&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;valueHigh&quot; with the proper type (38) assert_inherits: property &quot;valueHigh&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;width&quot; with the proper type (39) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;stepUp&quot; with the proper type (40) 
+PASS HTMLInputElement interface: calling stepUp(long) on createInput(&quot;password&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;stepDown&quot; with the proper type (41) 
+PASS HTMLInputElement interface: calling stepDown(long) on createInput(&quot;password&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;willValidate&quot; with the proper type (42) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;validity&quot; with the proper type (43) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;validationMessage&quot; with the proper type (44) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;checkValidity&quot; with the proper type (45) 
+FAIL HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;reportValidity&quot; with the proper type (46) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (47) 
+PASS HTMLInputElement interface: calling setCustomValidity(DOMString) on createInput(&quot;password&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;labels&quot; with the proper type (48) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;select&quot; with the proper type (49) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;selectionStart&quot; with the proper type (50) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;selectionEnd&quot; with the proper type (51) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;selectionDirection&quot; with the proper type (52) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;setRangeText&quot; with the proper type (53) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString) on createInput(&quot;password&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;setRangeText&quot; with the proper type (54) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString,unsigned long,unsigned long,SelectionMode) on createInput(&quot;password&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;setSelectionRange&quot; with the proper type (55) 
+FAIL HTMLInputElement interface: calling setSelectionRange(unsigned long,unsigned long,DOMString) on createInput(&quot;password&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;align&quot; with the proper type (56) 
+PASS HTMLInputElement interface: createInput(&quot;password&quot;) must inherit property &quot;useMap&quot; with the proper type (57) 
+PASS HTMLInputElement must be primary interface of createInput(&quot;date&quot;) 
+PASS Stringification of createInput(&quot;date&quot;) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;accept&quot; with the proper type (0) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;alt&quot; with the proper type (1) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;autocomplete&quot; with the proper type (2) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;autofocus&quot; with the proper type (3) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;defaultChecked&quot; with the proper type (4) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;checked&quot; with the proper type (5) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;dirName&quot; with the proper type (6) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;disabled&quot; with the proper type (7) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;form&quot; with the proper type (8) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;files&quot; with the proper type (9) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;formAction&quot; with the proper type (10) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;formEnctype&quot; with the proper type (11) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;formMethod&quot; with the proper type (12) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;formNoValidate&quot; with the proper type (13) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;formTarget&quot; with the proper type (14) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;height&quot; with the proper type (15) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;indeterminate&quot; with the proper type (16) 
+FAIL HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;inputMode&quot; with the proper type (17) assert_inherits: property &quot;inputMode&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;list&quot; with the proper type (18) assert_inherits: property &quot;list&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;max&quot; with the proper type (19) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;maxLength&quot; with the proper type (20) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;min&quot; with the proper type (21) 
+FAIL HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;minLength&quot; with the proper type (22) assert_inherits: property &quot;minLength&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;multiple&quot; with the proper type (23) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;name&quot; with the proper type (24) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;pattern&quot; with the proper type (25) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;placeholder&quot; with the proper type (26) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;readOnly&quot; with the proper type (27) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;required&quot; with the proper type (28) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;size&quot; with the proper type (29) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;src&quot; with the proper type (30) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;step&quot; with the proper type (31) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;type&quot; with the proper type (32) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;defaultValue&quot; with the proper type (33) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;value&quot; with the proper type (34) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;valueAsDate&quot; with the proper type (35) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;valueAsNumber&quot; with the proper type (36) 
+FAIL HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;valueLow&quot; with the proper type (37) assert_inherits: property &quot;valueLow&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;valueHigh&quot; with the proper type (38) assert_inherits: property &quot;valueHigh&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;width&quot; with the proper type (39) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;stepUp&quot; with the proper type (40) 
+PASS HTMLInputElement interface: calling stepUp(long) on createInput(&quot;date&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;stepDown&quot; with the proper type (41) 
+PASS HTMLInputElement interface: calling stepDown(long) on createInput(&quot;date&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;willValidate&quot; with the proper type (42) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;validity&quot; with the proper type (43) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;validationMessage&quot; with the proper type (44) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;checkValidity&quot; with the proper type (45) 
+FAIL HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;reportValidity&quot; with the proper type (46) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (47) 
+PASS HTMLInputElement interface: calling setCustomValidity(DOMString) on createInput(&quot;date&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;labels&quot; with the proper type (48) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;select&quot; with the proper type (49) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;selectionStart&quot; with the proper type (50) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;selectionEnd&quot; with the proper type (51) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;selectionDirection&quot; with the proper type (52) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;setRangeText&quot; with the proper type (53) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString) on createInput(&quot;date&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;setRangeText&quot; with the proper type (54) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString,unsigned long,unsigned long,SelectionMode) on createInput(&quot;date&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;setSelectionRange&quot; with the proper type (55) 
+FAIL HTMLInputElement interface: calling setSelectionRange(unsigned long,unsigned long,DOMString) on createInput(&quot;date&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;align&quot; with the proper type (56) 
+PASS HTMLInputElement interface: createInput(&quot;date&quot;) must inherit property &quot;useMap&quot; with the proper type (57) 
+PASS HTMLInputElement must be primary interface of createInput(&quot;month&quot;) 
+PASS Stringification of createInput(&quot;month&quot;) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;accept&quot; with the proper type (0) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;alt&quot; with the proper type (1) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;autocomplete&quot; with the proper type (2) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;autofocus&quot; with the proper type (3) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;defaultChecked&quot; with the proper type (4) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;checked&quot; with the proper type (5) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;dirName&quot; with the proper type (6) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;disabled&quot; with the proper type (7) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;form&quot; with the proper type (8) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;files&quot; with the proper type (9) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;formAction&quot; with the proper type (10) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;formEnctype&quot; with the proper type (11) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;formMethod&quot; with the proper type (12) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;formNoValidate&quot; with the proper type (13) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;formTarget&quot; with the proper type (14) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;height&quot; with the proper type (15) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;indeterminate&quot; with the proper type (16) 
+FAIL HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;inputMode&quot; with the proper type (17) assert_inherits: property &quot;inputMode&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;list&quot; with the proper type (18) assert_inherits: property &quot;list&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;max&quot; with the proper type (19) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;maxLength&quot; with the proper type (20) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;min&quot; with the proper type (21) 
+FAIL HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;minLength&quot; with the proper type (22) assert_inherits: property &quot;minLength&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;multiple&quot; with the proper type (23) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;name&quot; with the proper type (24) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;pattern&quot; with the proper type (25) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;placeholder&quot; with the proper type (26) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;readOnly&quot; with the proper type (27) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;required&quot; with the proper type (28) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;size&quot; with the proper type (29) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;src&quot; with the proper type (30) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;step&quot; with the proper type (31) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;type&quot; with the proper type (32) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;defaultValue&quot; with the proper type (33) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;value&quot; with the proper type (34) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;valueAsDate&quot; with the proper type (35) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;valueAsNumber&quot; with the proper type (36) 
+FAIL HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;valueLow&quot; with the proper type (37) assert_inherits: property &quot;valueLow&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;valueHigh&quot; with the proper type (38) assert_inherits: property &quot;valueHigh&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;width&quot; with the proper type (39) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;stepUp&quot; with the proper type (40) 
+PASS HTMLInputElement interface: calling stepUp(long) on createInput(&quot;month&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;stepDown&quot; with the proper type (41) 
+PASS HTMLInputElement interface: calling stepDown(long) on createInput(&quot;month&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;willValidate&quot; with the proper type (42) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;validity&quot; with the proper type (43) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;validationMessage&quot; with the proper type (44) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;checkValidity&quot; with the proper type (45) 
+FAIL HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;reportValidity&quot; with the proper type (46) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (47) 
+PASS HTMLInputElement interface: calling setCustomValidity(DOMString) on createInput(&quot;month&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;labels&quot; with the proper type (48) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;select&quot; with the proper type (49) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;selectionStart&quot; with the proper type (50) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;selectionEnd&quot; with the proper type (51) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;selectionDirection&quot; with the proper type (52) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;setRangeText&quot; with the proper type (53) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString) on createInput(&quot;month&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;setRangeText&quot; with the proper type (54) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString,unsigned long,unsigned long,SelectionMode) on createInput(&quot;month&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;setSelectionRange&quot; with the proper type (55) 
+FAIL HTMLInputElement interface: calling setSelectionRange(unsigned long,unsigned long,DOMString) on createInput(&quot;month&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;align&quot; with the proper type (56) 
+PASS HTMLInputElement interface: createInput(&quot;month&quot;) must inherit property &quot;useMap&quot; with the proper type (57) 
+PASS HTMLInputElement must be primary interface of createInput(&quot;week&quot;) 
+PASS Stringification of createInput(&quot;week&quot;) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;accept&quot; with the proper type (0) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;alt&quot; with the proper type (1) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;autocomplete&quot; with the proper type (2) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;autofocus&quot; with the proper type (3) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;defaultChecked&quot; with the proper type (4) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;checked&quot; with the proper type (5) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;dirName&quot; with the proper type (6) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;disabled&quot; with the proper type (7) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;form&quot; with the proper type (8) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;files&quot; with the proper type (9) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;formAction&quot; with the proper type (10) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;formEnctype&quot; with the proper type (11) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;formMethod&quot; with the proper type (12) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;formNoValidate&quot; with the proper type (13) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;formTarget&quot; with the proper type (14) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;height&quot; with the proper type (15) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;indeterminate&quot; with the proper type (16) 
+FAIL HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;inputMode&quot; with the proper type (17) assert_inherits: property &quot;inputMode&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;list&quot; with the proper type (18) assert_inherits: property &quot;list&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;max&quot; with the proper type (19) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;maxLength&quot; with the proper type (20) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;min&quot; with the proper type (21) 
+FAIL HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;minLength&quot; with the proper type (22) assert_inherits: property &quot;minLength&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;multiple&quot; with the proper type (23) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;name&quot; with the proper type (24) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;pattern&quot; with the proper type (25) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;placeholder&quot; with the proper type (26) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;readOnly&quot; with the proper type (27) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;required&quot; with the proper type (28) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;size&quot; with the proper type (29) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;src&quot; with the proper type (30) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;step&quot; with the proper type (31) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;type&quot; with the proper type (32) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;defaultValue&quot; with the proper type (33) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;value&quot; with the proper type (34) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;valueAsDate&quot; with the proper type (35) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;valueAsNumber&quot; with the proper type (36) 
+FAIL HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;valueLow&quot; with the proper type (37) assert_inherits: property &quot;valueLow&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;valueHigh&quot; with the proper type (38) assert_inherits: property &quot;valueHigh&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;width&quot; with the proper type (39) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;stepUp&quot; with the proper type (40) 
+PASS HTMLInputElement interface: calling stepUp(long) on createInput(&quot;week&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;stepDown&quot; with the proper type (41) 
+PASS HTMLInputElement interface: calling stepDown(long) on createInput(&quot;week&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;willValidate&quot; with the proper type (42) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;validity&quot; with the proper type (43) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;validationMessage&quot; with the proper type (44) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;checkValidity&quot; with the proper type (45) 
+FAIL HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;reportValidity&quot; with the proper type (46) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (47) 
+PASS HTMLInputElement interface: calling setCustomValidity(DOMString) on createInput(&quot;week&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;labels&quot; with the proper type (48) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;select&quot; with the proper type (49) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;selectionStart&quot; with the proper type (50) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;selectionEnd&quot; with the proper type (51) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;selectionDirection&quot; with the proper type (52) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;setRangeText&quot; with the proper type (53) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString) on createInput(&quot;week&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;setRangeText&quot; with the proper type (54) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString,unsigned long,unsigned long,SelectionMode) on createInput(&quot;week&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;setSelectionRange&quot; with the proper type (55) 
+FAIL HTMLInputElement interface: calling setSelectionRange(unsigned long,unsigned long,DOMString) on createInput(&quot;week&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;align&quot; with the proper type (56) 
+PASS HTMLInputElement interface: createInput(&quot;week&quot;) must inherit property &quot;useMap&quot; with the proper type (57) 
+PASS HTMLInputElement must be primary interface of createInput(&quot;time&quot;) 
+PASS Stringification of createInput(&quot;time&quot;) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;accept&quot; with the proper type (0) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;alt&quot; with the proper type (1) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;autocomplete&quot; with the proper type (2) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;autofocus&quot; with the proper type (3) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;defaultChecked&quot; with the proper type (4) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;checked&quot; with the proper type (5) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;dirName&quot; with the proper type (6) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;disabled&quot; with the proper type (7) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;form&quot; with the proper type (8) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;files&quot; with the proper type (9) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;formAction&quot; with the proper type (10) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;formEnctype&quot; with the proper type (11) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;formMethod&quot; with the proper type (12) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;formNoValidate&quot; with the proper type (13) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;formTarget&quot; with the proper type (14) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;height&quot; with the proper type (15) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;indeterminate&quot; with the proper type (16) 
+FAIL HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;inputMode&quot; with the proper type (17) assert_inherits: property &quot;inputMode&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;list&quot; with the proper type (18) assert_inherits: property &quot;list&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;max&quot; with the proper type (19) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;maxLength&quot; with the proper type (20) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;min&quot; with the proper type (21) 
+FAIL HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;minLength&quot; with the proper type (22) assert_inherits: property &quot;minLength&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;multiple&quot; with the proper type (23) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;name&quot; with the proper type (24) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;pattern&quot; with the proper type (25) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;placeholder&quot; with the proper type (26) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;readOnly&quot; with the proper type (27) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;required&quot; with the proper type (28) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;size&quot; with the proper type (29) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;src&quot; with the proper type (30) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;step&quot; with the proper type (31) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;type&quot; with the proper type (32) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;defaultValue&quot; with the proper type (33) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;value&quot; with the proper type (34) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;valueAsDate&quot; with the proper type (35) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;valueAsNumber&quot; with the proper type (36) 
+FAIL HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;valueLow&quot; with the proper type (37) assert_inherits: property &quot;valueLow&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;valueHigh&quot; with the proper type (38) assert_inherits: property &quot;valueHigh&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;width&quot; with the proper type (39) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;stepUp&quot; with the proper type (40) 
+PASS HTMLInputElement interface: calling stepUp(long) on createInput(&quot;time&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;stepDown&quot; with the proper type (41) 
+PASS HTMLInputElement interface: calling stepDown(long) on createInput(&quot;time&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;willValidate&quot; with the proper type (42) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;validity&quot; with the proper type (43) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;validationMessage&quot; with the proper type (44) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;checkValidity&quot; with the proper type (45) 
+FAIL HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;reportValidity&quot; with the proper type (46) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (47) 
+PASS HTMLInputElement interface: calling setCustomValidity(DOMString) on createInput(&quot;time&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;labels&quot; with the proper type (48) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;select&quot; with the proper type (49) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;selectionStart&quot; with the proper type (50) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;selectionEnd&quot; with the proper type (51) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;selectionDirection&quot; with the proper type (52) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;setRangeText&quot; with the proper type (53) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString) on createInput(&quot;time&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;setRangeText&quot; with the proper type (54) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString,unsigned long,unsigned long,SelectionMode) on createInput(&quot;time&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;setSelectionRange&quot; with the proper type (55) 
+FAIL HTMLInputElement interface: calling setSelectionRange(unsigned long,unsigned long,DOMString) on createInput(&quot;time&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;align&quot; with the proper type (56) 
+PASS HTMLInputElement interface: createInput(&quot;time&quot;) must inherit property &quot;useMap&quot; with the proper type (57) 
+PASS HTMLInputElement must be primary interface of createInput(&quot;datetime-local&quot;) 
+PASS Stringification of createInput(&quot;datetime-local&quot;) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;accept&quot; with the proper type (0) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;alt&quot; with the proper type (1) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;autocomplete&quot; with the proper type (2) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;autofocus&quot; with the proper type (3) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;defaultChecked&quot; with the proper type (4) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;checked&quot; with the proper type (5) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;dirName&quot; with the proper type (6) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;disabled&quot; with the proper type (7) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;form&quot; with the proper type (8) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;files&quot; with the proper type (9) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;formAction&quot; with the proper type (10) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;formEnctype&quot; with the proper type (11) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;formMethod&quot; with the proper type (12) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;formNoValidate&quot; with the proper type (13) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;formTarget&quot; with the proper type (14) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;height&quot; with the proper type (15) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;indeterminate&quot; with the proper type (16) 
+FAIL HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;inputMode&quot; with the proper type (17) assert_inherits: property &quot;inputMode&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;list&quot; with the proper type (18) assert_inherits: property &quot;list&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;max&quot; with the proper type (19) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;maxLength&quot; with the proper type (20) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;min&quot; with the proper type (21) 
+FAIL HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;minLength&quot; with the proper type (22) assert_inherits: property &quot;minLength&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;multiple&quot; with the proper type (23) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;name&quot; with the proper type (24) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;pattern&quot; with the proper type (25) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;placeholder&quot; with the proper type (26) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;readOnly&quot; with the proper type (27) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;required&quot; with the proper type (28) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;size&quot; with the proper type (29) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;src&quot; with the proper type (30) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;step&quot; with the proper type (31) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;type&quot; with the proper type (32) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;defaultValue&quot; with the proper type (33) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;value&quot; with the proper type (34) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;valueAsDate&quot; with the proper type (35) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;valueAsNumber&quot; with the proper type (36) 
+FAIL HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;valueLow&quot; with the proper type (37) assert_inherits: property &quot;valueLow&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;valueHigh&quot; with the proper type (38) assert_inherits: property &quot;valueHigh&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;width&quot; with the proper type (39) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;stepUp&quot; with the proper type (40) 
+PASS HTMLInputElement interface: calling stepUp(long) on createInput(&quot;datetime-local&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;stepDown&quot; with the proper type (41) 
+PASS HTMLInputElement interface: calling stepDown(long) on createInput(&quot;datetime-local&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;willValidate&quot; with the proper type (42) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;validity&quot; with the proper type (43) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;validationMessage&quot; with the proper type (44) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;checkValidity&quot; with the proper type (45) 
+FAIL HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;reportValidity&quot; with the proper type (46) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (47) 
+PASS HTMLInputElement interface: calling setCustomValidity(DOMString) on createInput(&quot;datetime-local&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;labels&quot; with the proper type (48) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;select&quot; with the proper type (49) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;selectionStart&quot; with the proper type (50) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;selectionEnd&quot; with the proper type (51) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;selectionDirection&quot; with the proper type (52) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;setRangeText&quot; with the proper type (53) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString) on createInput(&quot;datetime-local&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;setRangeText&quot; with the proper type (54) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString,unsigned long,unsigned long,SelectionMode) on createInput(&quot;datetime-local&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;setSelectionRange&quot; with the proper type (55) 
+FAIL HTMLInputElement interface: calling setSelectionRange(unsigned long,unsigned long,DOMString) on createInput(&quot;datetime-local&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;align&quot; with the proper type (56) 
+PASS HTMLInputElement interface: createInput(&quot;datetime-local&quot;) must inherit property &quot;useMap&quot; with the proper type (57) 
+PASS HTMLInputElement must be primary interface of createInput(&quot;number&quot;) 
+PASS Stringification of createInput(&quot;number&quot;) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;accept&quot; with the proper type (0) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;alt&quot; with the proper type (1) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;autocomplete&quot; with the proper type (2) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;autofocus&quot; with the proper type (3) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;defaultChecked&quot; with the proper type (4) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;checked&quot; with the proper type (5) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;dirName&quot; with the proper type (6) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;disabled&quot; with the proper type (7) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;form&quot; with the proper type (8) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;files&quot; with the proper type (9) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;formAction&quot; with the proper type (10) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;formEnctype&quot; with the proper type (11) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;formMethod&quot; with the proper type (12) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;formNoValidate&quot; with the proper type (13) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;formTarget&quot; with the proper type (14) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;height&quot; with the proper type (15) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;indeterminate&quot; with the proper type (16) 
+FAIL HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;inputMode&quot; with the proper type (17) assert_inherits: property &quot;inputMode&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;list&quot; with the proper type (18) assert_inherits: property &quot;list&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;max&quot; with the proper type (19) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;maxLength&quot; with the proper type (20) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;min&quot; with the proper type (21) 
+FAIL HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;minLength&quot; with the proper type (22) assert_inherits: property &quot;minLength&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;multiple&quot; with the proper type (23) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;name&quot; with the proper type (24) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;pattern&quot; with the proper type (25) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;placeholder&quot; with the proper type (26) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;readOnly&quot; with the proper type (27) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;required&quot; with the proper type (28) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;size&quot; with the proper type (29) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;src&quot; with the proper type (30) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;step&quot; with the proper type (31) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;type&quot; with the proper type (32) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;defaultValue&quot; with the proper type (33) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;value&quot; with the proper type (34) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;valueAsDate&quot; with the proper type (35) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;valueAsNumber&quot; with the proper type (36) 
+FAIL HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;valueLow&quot; with the proper type (37) assert_inherits: property &quot;valueLow&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;valueHigh&quot; with the proper type (38) assert_inherits: property &quot;valueHigh&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;width&quot; with the proper type (39) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;stepUp&quot; with the proper type (40) 
+PASS HTMLInputElement interface: calling stepUp(long) on createInput(&quot;number&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;stepDown&quot; with the proper type (41) 
+PASS HTMLInputElement interface: calling stepDown(long) on createInput(&quot;number&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;willValidate&quot; with the proper type (42) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;validity&quot; with the proper type (43) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;validationMessage&quot; with the proper type (44) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;checkValidity&quot; with the proper type (45) 
+FAIL HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;reportValidity&quot; with the proper type (46) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (47) 
+PASS HTMLInputElement interface: calling setCustomValidity(DOMString) on createInput(&quot;number&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;labels&quot; with the proper type (48) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;select&quot; with the proper type (49) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;selectionStart&quot; with the proper type (50) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;selectionEnd&quot; with the proper type (51) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;selectionDirection&quot; with the proper type (52) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;setRangeText&quot; with the proper type (53) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString) on createInput(&quot;number&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;setRangeText&quot; with the proper type (54) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString,unsigned long,unsigned long,SelectionMode) on createInput(&quot;number&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;setSelectionRange&quot; with the proper type (55) 
+FAIL HTMLInputElement interface: calling setSelectionRange(unsigned long,unsigned long,DOMString) on createInput(&quot;number&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;align&quot; with the proper type (56) 
+PASS HTMLInputElement interface: createInput(&quot;number&quot;) must inherit property &quot;useMap&quot; with the proper type (57) 
+PASS HTMLInputElement must be primary interface of createInput(&quot;range&quot;) 
+PASS Stringification of createInput(&quot;range&quot;) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;accept&quot; with the proper type (0) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;alt&quot; with the proper type (1) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;autocomplete&quot; with the proper type (2) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;autofocus&quot; with the proper type (3) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;defaultChecked&quot; with the proper type (4) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;checked&quot; with the proper type (5) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;dirName&quot; with the proper type (6) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;disabled&quot; with the proper type (7) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;form&quot; with the proper type (8) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;files&quot; with the proper type (9) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;formAction&quot; with the proper type (10) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;formEnctype&quot; with the proper type (11) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;formMethod&quot; with the proper type (12) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;formNoValidate&quot; with the proper type (13) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;formTarget&quot; with the proper type (14) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;height&quot; with the proper type (15) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;indeterminate&quot; with the proper type (16) 
+FAIL HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;inputMode&quot; with the proper type (17) assert_inherits: property &quot;inputMode&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;list&quot; with the proper type (18) assert_inherits: property &quot;list&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;max&quot; with the proper type (19) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;maxLength&quot; with the proper type (20) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;min&quot; with the proper type (21) 
+FAIL HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;minLength&quot; with the proper type (22) assert_inherits: property &quot;minLength&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;multiple&quot; with the proper type (23) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;name&quot; with the proper type (24) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;pattern&quot; with the proper type (25) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;placeholder&quot; with the proper type (26) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;readOnly&quot; with the proper type (27) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;required&quot; with the proper type (28) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;size&quot; with the proper type (29) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;src&quot; with the proper type (30) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;step&quot; with the proper type (31) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;type&quot; with the proper type (32) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;defaultValue&quot; with the proper type (33) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;value&quot; with the proper type (34) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;valueAsDate&quot; with the proper type (35) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;valueAsNumber&quot; with the proper type (36) 
+FAIL HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;valueLow&quot; with the proper type (37) assert_inherits: property &quot;valueLow&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;valueHigh&quot; with the proper type (38) assert_inherits: property &quot;valueHigh&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;width&quot; with the proper type (39) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;stepUp&quot; with the proper type (40) 
+PASS HTMLInputElement interface: calling stepUp(long) on createInput(&quot;range&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;stepDown&quot; with the proper type (41) 
+PASS HTMLInputElement interface: calling stepDown(long) on createInput(&quot;range&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;willValidate&quot; with the proper type (42) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;validity&quot; with the proper type (43) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;validationMessage&quot; with the proper type (44) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;checkValidity&quot; with the proper type (45) 
+FAIL HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;reportValidity&quot; with the proper type (46) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (47) 
+PASS HTMLInputElement interface: calling setCustomValidity(DOMString) on createInput(&quot;range&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;labels&quot; with the proper type (48) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;select&quot; with the proper type (49) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;selectionStart&quot; with the proper type (50) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;selectionEnd&quot; with the proper type (51) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;selectionDirection&quot; with the proper type (52) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;setRangeText&quot; with the proper type (53) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString) on createInput(&quot;range&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;setRangeText&quot; with the proper type (54) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString,unsigned long,unsigned long,SelectionMode) on createInput(&quot;range&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;setSelectionRange&quot; with the proper type (55) 
+PASS HTMLInputElement interface: calling setSelectionRange(unsigned long,unsigned long,DOMString) on createInput(&quot;range&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;align&quot; with the proper type (56) 
+PASS HTMLInputElement interface: createInput(&quot;range&quot;) must inherit property &quot;useMap&quot; with the proper type (57) 
+PASS HTMLInputElement must be primary interface of createInput(&quot;color&quot;) 
+PASS Stringification of createInput(&quot;color&quot;) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;accept&quot; with the proper type (0) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;alt&quot; with the proper type (1) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;autocomplete&quot; with the proper type (2) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;autofocus&quot; with the proper type (3) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;defaultChecked&quot; with the proper type (4) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;checked&quot; with the proper type (5) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;dirName&quot; with the proper type (6) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;disabled&quot; with the proper type (7) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;form&quot; with the proper type (8) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;files&quot; with the proper type (9) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;formAction&quot; with the proper type (10) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;formEnctype&quot; with the proper type (11) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;formMethod&quot; with the proper type (12) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;formNoValidate&quot; with the proper type (13) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;formTarget&quot; with the proper type (14) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;height&quot; with the proper type (15) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;indeterminate&quot; with the proper type (16) 
+FAIL HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;inputMode&quot; with the proper type (17) assert_inherits: property &quot;inputMode&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;list&quot; with the proper type (18) assert_inherits: property &quot;list&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;max&quot; with the proper type (19) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;maxLength&quot; with the proper type (20) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;min&quot; with the proper type (21) 
+FAIL HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;minLength&quot; with the proper type (22) assert_inherits: property &quot;minLength&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;multiple&quot; with the proper type (23) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;name&quot; with the proper type (24) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;pattern&quot; with the proper type (25) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;placeholder&quot; with the proper type (26) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;readOnly&quot; with the proper type (27) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;required&quot; with the proper type (28) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;size&quot; with the proper type (29) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;src&quot; with the proper type (30) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;step&quot; with the proper type (31) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;type&quot; with the proper type (32) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;defaultValue&quot; with the proper type (33) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;value&quot; with the proper type (34) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;valueAsDate&quot; with the proper type (35) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;valueAsNumber&quot; with the proper type (36) 
+FAIL HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;valueLow&quot; with the proper type (37) assert_inherits: property &quot;valueLow&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;valueHigh&quot; with the proper type (38) assert_inherits: property &quot;valueHigh&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;width&quot; with the proper type (39) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;stepUp&quot; with the proper type (40) 
+PASS HTMLInputElement interface: calling stepUp(long) on createInput(&quot;color&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;stepDown&quot; with the proper type (41) 
+PASS HTMLInputElement interface: calling stepDown(long) on createInput(&quot;color&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;willValidate&quot; with the proper type (42) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;validity&quot; with the proper type (43) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;validationMessage&quot; with the proper type (44) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;checkValidity&quot; with the proper type (45) 
+FAIL HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;reportValidity&quot; with the proper type (46) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (47) 
+PASS HTMLInputElement interface: calling setCustomValidity(DOMString) on createInput(&quot;color&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;labels&quot; with the proper type (48) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;select&quot; with the proper type (49) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;selectionStart&quot; with the proper type (50) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;selectionEnd&quot; with the proper type (51) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;selectionDirection&quot; with the proper type (52) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;setRangeText&quot; with the proper type (53) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString) on createInput(&quot;color&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;setRangeText&quot; with the proper type (54) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString,unsigned long,unsigned long,SelectionMode) on createInput(&quot;color&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;setSelectionRange&quot; with the proper type (55) 
+FAIL HTMLInputElement interface: calling setSelectionRange(unsigned long,unsigned long,DOMString) on createInput(&quot;color&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;align&quot; with the proper type (56) 
+PASS HTMLInputElement interface: createInput(&quot;color&quot;) must inherit property &quot;useMap&quot; with the proper type (57) 
+PASS HTMLInputElement must be primary interface of createInput(&quot;checkbox&quot;) 
+PASS Stringification of createInput(&quot;checkbox&quot;) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;accept&quot; with the proper type (0) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;alt&quot; with the proper type (1) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;autocomplete&quot; with the proper type (2) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;autofocus&quot; with the proper type (3) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;defaultChecked&quot; with the proper type (4) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;checked&quot; with the proper type (5) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;dirName&quot; with the proper type (6) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;disabled&quot; with the proper type (7) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;form&quot; with the proper type (8) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;files&quot; with the proper type (9) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;formAction&quot; with the proper type (10) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;formEnctype&quot; with the proper type (11) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;formMethod&quot; with the proper type (12) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;formNoValidate&quot; with the proper type (13) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;formTarget&quot; with the proper type (14) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;height&quot; with the proper type (15) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;indeterminate&quot; with the proper type (16) 
+FAIL HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;inputMode&quot; with the proper type (17) assert_inherits: property &quot;inputMode&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;list&quot; with the proper type (18) assert_inherits: property &quot;list&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;max&quot; with the proper type (19) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;maxLength&quot; with the proper type (20) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;min&quot; with the proper type (21) 
+FAIL HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;minLength&quot; with the proper type (22) assert_inherits: property &quot;minLength&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;multiple&quot; with the proper type (23) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;name&quot; with the proper type (24) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;pattern&quot; with the proper type (25) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;placeholder&quot; with the proper type (26) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;readOnly&quot; with the proper type (27) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;required&quot; with the proper type (28) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;size&quot; with the proper type (29) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;src&quot; with the proper type (30) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;step&quot; with the proper type (31) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;type&quot; with the proper type (32) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;defaultValue&quot; with the proper type (33) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;value&quot; with the proper type (34) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;valueAsDate&quot; with the proper type (35) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;valueAsNumber&quot; with the proper type (36) 
+FAIL HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;valueLow&quot; with the proper type (37) assert_inherits: property &quot;valueLow&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;valueHigh&quot; with the proper type (38) assert_inherits: property &quot;valueHigh&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;width&quot; with the proper type (39) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;stepUp&quot; with the proper type (40) 
+PASS HTMLInputElement interface: calling stepUp(long) on createInput(&quot;checkbox&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;stepDown&quot; with the proper type (41) 
+PASS HTMLInputElement interface: calling stepDown(long) on createInput(&quot;checkbox&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;willValidate&quot; with the proper type (42) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;validity&quot; with the proper type (43) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;validationMessage&quot; with the proper type (44) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;checkValidity&quot; with the proper type (45) 
+FAIL HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;reportValidity&quot; with the proper type (46) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (47) 
+PASS HTMLInputElement interface: calling setCustomValidity(DOMString) on createInput(&quot;checkbox&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;labels&quot; with the proper type (48) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;select&quot; with the proper type (49) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;selectionStart&quot; with the proper type (50) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;selectionEnd&quot; with the proper type (51) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;selectionDirection&quot; with the proper type (52) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;setRangeText&quot; with the proper type (53) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString) on createInput(&quot;checkbox&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;setRangeText&quot; with the proper type (54) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString,unsigned long,unsigned long,SelectionMode) on createInput(&quot;checkbox&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;setSelectionRange&quot; with the proper type (55) 
+PASS HTMLInputElement interface: calling setSelectionRange(unsigned long,unsigned long,DOMString) on createInput(&quot;checkbox&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;align&quot; with the proper type (56) 
+PASS HTMLInputElement interface: createInput(&quot;checkbox&quot;) must inherit property &quot;useMap&quot; with the proper type (57) 
+PASS HTMLInputElement must be primary interface of createInput(&quot;radio&quot;) 
+PASS Stringification of createInput(&quot;radio&quot;) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;accept&quot; with the proper type (0) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;alt&quot; with the proper type (1) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;autocomplete&quot; with the proper type (2) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;autofocus&quot; with the proper type (3) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;defaultChecked&quot; with the proper type (4) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;checked&quot; with the proper type (5) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;dirName&quot; with the proper type (6) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;disabled&quot; with the proper type (7) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;form&quot; with the proper type (8) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;files&quot; with the proper type (9) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;formAction&quot; with the proper type (10) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;formEnctype&quot; with the proper type (11) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;formMethod&quot; with the proper type (12) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;formNoValidate&quot; with the proper type (13) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;formTarget&quot; with the proper type (14) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;height&quot; with the proper type (15) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;indeterminate&quot; with the proper type (16) 
+FAIL HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;inputMode&quot; with the proper type (17) assert_inherits: property &quot;inputMode&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;list&quot; with the proper type (18) assert_inherits: property &quot;list&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;max&quot; with the proper type (19) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;maxLength&quot; with the proper type (20) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;min&quot; with the proper type (21) 
+FAIL HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;minLength&quot; with the proper type (22) assert_inherits: property &quot;minLength&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;multiple&quot; with the proper type (23) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;name&quot; with the proper type (24) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;pattern&quot; with the proper type (25) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;placeholder&quot; with the proper type (26) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;readOnly&quot; with the proper type (27) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;required&quot; with the proper type (28) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;size&quot; with the proper type (29) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;src&quot; with the proper type (30) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;step&quot; with the proper type (31) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;type&quot; with the proper type (32) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;defaultValue&quot; with the proper type (33) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;value&quot; with the proper type (34) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;valueAsDate&quot; with the proper type (35) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;valueAsNumber&quot; with the proper type (36) 
+FAIL HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;valueLow&quot; with the proper type (37) assert_inherits: property &quot;valueLow&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;valueHigh&quot; with the proper type (38) assert_inherits: property &quot;valueHigh&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;width&quot; with the proper type (39) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;stepUp&quot; with the proper type (40) 
+PASS HTMLInputElement interface: calling stepUp(long) on createInput(&quot;radio&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;stepDown&quot; with the proper type (41) 
+PASS HTMLInputElement interface: calling stepDown(long) on createInput(&quot;radio&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;willValidate&quot; with the proper type (42) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;validity&quot; with the proper type (43) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;validationMessage&quot; with the proper type (44) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;checkValidity&quot; with the proper type (45) 
+FAIL HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;reportValidity&quot; with the proper type (46) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (47) 
+PASS HTMLInputElement interface: calling setCustomValidity(DOMString) on createInput(&quot;radio&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;labels&quot; with the proper type (48) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;select&quot; with the proper type (49) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;selectionStart&quot; with the proper type (50) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;selectionEnd&quot; with the proper type (51) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;selectionDirection&quot; with the proper type (52) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;setRangeText&quot; with the proper type (53) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString) on createInput(&quot;radio&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;setRangeText&quot; with the proper type (54) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString,unsigned long,unsigned long,SelectionMode) on createInput(&quot;radio&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;setSelectionRange&quot; with the proper type (55) 
+PASS HTMLInputElement interface: calling setSelectionRange(unsigned long,unsigned long,DOMString) on createInput(&quot;radio&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;align&quot; with the proper type (56) 
+PASS HTMLInputElement interface: createInput(&quot;radio&quot;) must inherit property &quot;useMap&quot; with the proper type (57) 
+PASS HTMLInputElement must be primary interface of createInput(&quot;file&quot;) 
+PASS Stringification of createInput(&quot;file&quot;) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;accept&quot; with the proper type (0) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;alt&quot; with the proper type (1) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;autocomplete&quot; with the proper type (2) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;autofocus&quot; with the proper type (3) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;defaultChecked&quot; with the proper type (4) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;checked&quot; with the proper type (5) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;dirName&quot; with the proper type (6) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;disabled&quot; with the proper type (7) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;form&quot; with the proper type (8) 
+FAIL HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;files&quot; with the proper type (9) Unrecognized type FileList
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;formAction&quot; with the proper type (10) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;formEnctype&quot; with the proper type (11) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;formMethod&quot; with the proper type (12) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;formNoValidate&quot; with the proper type (13) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;formTarget&quot; with the proper type (14) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;height&quot; with the proper type (15) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;indeterminate&quot; with the proper type (16) 
+FAIL HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;inputMode&quot; with the proper type (17) assert_inherits: property &quot;inputMode&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;list&quot; with the proper type (18) assert_inherits: property &quot;list&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;max&quot; with the proper type (19) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;maxLength&quot; with the proper type (20) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;min&quot; with the proper type (21) 
+FAIL HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;minLength&quot; with the proper type (22) assert_inherits: property &quot;minLength&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;multiple&quot; with the proper type (23) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;name&quot; with the proper type (24) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;pattern&quot; with the proper type (25) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;placeholder&quot; with the proper type (26) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;readOnly&quot; with the proper type (27) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;required&quot; with the proper type (28) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;size&quot; with the proper type (29) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;src&quot; with the proper type (30) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;step&quot; with the proper type (31) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;type&quot; with the proper type (32) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;defaultValue&quot; with the proper type (33) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;value&quot; with the proper type (34) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;valueAsDate&quot; with the proper type (35) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;valueAsNumber&quot; with the proper type (36) 
+FAIL HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;valueLow&quot; with the proper type (37) assert_inherits: property &quot;valueLow&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;valueHigh&quot; with the proper type (38) assert_inherits: property &quot;valueHigh&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;width&quot; with the proper type (39) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;stepUp&quot; with the proper type (40) 
+PASS HTMLInputElement interface: calling stepUp(long) on createInput(&quot;file&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;stepDown&quot; with the proper type (41) 
+PASS HTMLInputElement interface: calling stepDown(long) on createInput(&quot;file&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;willValidate&quot; with the proper type (42) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;validity&quot; with the proper type (43) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;validationMessage&quot; with the proper type (44) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;checkValidity&quot; with the proper type (45) 
+FAIL HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;reportValidity&quot; with the proper type (46) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (47) 
+PASS HTMLInputElement interface: calling setCustomValidity(DOMString) on createInput(&quot;file&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;labels&quot; with the proper type (48) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;select&quot; with the proper type (49) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;selectionStart&quot; with the proper type (50) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;selectionEnd&quot; with the proper type (51) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;selectionDirection&quot; with the proper type (52) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;setRangeText&quot; with the proper type (53) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString) on createInput(&quot;file&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;setRangeText&quot; with the proper type (54) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString,unsigned long,unsigned long,SelectionMode) on createInput(&quot;file&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;setSelectionRange&quot; with the proper type (55) 
+PASS HTMLInputElement interface: calling setSelectionRange(unsigned long,unsigned long,DOMString) on createInput(&quot;file&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;align&quot; with the proper type (56) 
+PASS HTMLInputElement interface: createInput(&quot;file&quot;) must inherit property &quot;useMap&quot; with the proper type (57) 
+PASS HTMLInputElement must be primary interface of createInput(&quot;submit&quot;) 
+PASS Stringification of createInput(&quot;submit&quot;) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;accept&quot; with the proper type (0) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;alt&quot; with the proper type (1) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;autocomplete&quot; with the proper type (2) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;autofocus&quot; with the proper type (3) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;defaultChecked&quot; with the proper type (4) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;checked&quot; with the proper type (5) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;dirName&quot; with the proper type (6) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;disabled&quot; with the proper type (7) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;form&quot; with the proper type (8) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;files&quot; with the proper type (9) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;formAction&quot; with the proper type (10) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;formEnctype&quot; with the proper type (11) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;formMethod&quot; with the proper type (12) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;formNoValidate&quot; with the proper type (13) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;formTarget&quot; with the proper type (14) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;height&quot; with the proper type (15) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;indeterminate&quot; with the proper type (16) 
+FAIL HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;inputMode&quot; with the proper type (17) assert_inherits: property &quot;inputMode&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;list&quot; with the proper type (18) assert_inherits: property &quot;list&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;max&quot; with the proper type (19) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;maxLength&quot; with the proper type (20) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;min&quot; with the proper type (21) 
+FAIL HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;minLength&quot; with the proper type (22) assert_inherits: property &quot;minLength&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;multiple&quot; with the proper type (23) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;name&quot; with the proper type (24) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;pattern&quot; with the proper type (25) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;placeholder&quot; with the proper type (26) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;readOnly&quot; with the proper type (27) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;required&quot; with the proper type (28) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;size&quot; with the proper type (29) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;src&quot; with the proper type (30) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;step&quot; with the proper type (31) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;type&quot; with the proper type (32) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;defaultValue&quot; with the proper type (33) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;value&quot; with the proper type (34) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;valueAsDate&quot; with the proper type (35) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;valueAsNumber&quot; with the proper type (36) 
+FAIL HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;valueLow&quot; with the proper type (37) assert_inherits: property &quot;valueLow&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;valueHigh&quot; with the proper type (38) assert_inherits: property &quot;valueHigh&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;width&quot; with the proper type (39) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;stepUp&quot; with the proper type (40) 
+PASS HTMLInputElement interface: calling stepUp(long) on createInput(&quot;submit&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;stepDown&quot; with the proper type (41) 
+PASS HTMLInputElement interface: calling stepDown(long) on createInput(&quot;submit&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;willValidate&quot; with the proper type (42) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;validity&quot; with the proper type (43) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;validationMessage&quot; with the proper type (44) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;checkValidity&quot; with the proper type (45) 
+FAIL HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;reportValidity&quot; with the proper type (46) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (47) 
+PASS HTMLInputElement interface: calling setCustomValidity(DOMString) on createInput(&quot;submit&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;labels&quot; with the proper type (48) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;select&quot; with the proper type (49) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;selectionStart&quot; with the proper type (50) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;selectionEnd&quot; with the proper type (51) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;selectionDirection&quot; with the proper type (52) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;setRangeText&quot; with the proper type (53) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString) on createInput(&quot;submit&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;setRangeText&quot; with the proper type (54) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString,unsigned long,unsigned long,SelectionMode) on createInput(&quot;submit&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;setSelectionRange&quot; with the proper type (55) 
+PASS HTMLInputElement interface: calling setSelectionRange(unsigned long,unsigned long,DOMString) on createInput(&quot;submit&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;align&quot; with the proper type (56) 
+PASS HTMLInputElement interface: createInput(&quot;submit&quot;) must inherit property &quot;useMap&quot; with the proper type (57) 
+PASS HTMLInputElement must be primary interface of createInput(&quot;image&quot;) 
+PASS Stringification of createInput(&quot;image&quot;) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;accept&quot; with the proper type (0) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;alt&quot; with the proper type (1) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;autocomplete&quot; with the proper type (2) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;autofocus&quot; with the proper type (3) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;defaultChecked&quot; with the proper type (4) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;checked&quot; with the proper type (5) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;dirName&quot; with the proper type (6) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;disabled&quot; with the proper type (7) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;form&quot; with the proper type (8) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;files&quot; with the proper type (9) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;formAction&quot; with the proper type (10) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;formEnctype&quot; with the proper type (11) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;formMethod&quot; with the proper type (12) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;formNoValidate&quot; with the proper type (13) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;formTarget&quot; with the proper type (14) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;height&quot; with the proper type (15) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;indeterminate&quot; with the proper type (16) 
+FAIL HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;inputMode&quot; with the proper type (17) assert_inherits: property &quot;inputMode&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;list&quot; with the proper type (18) assert_inherits: property &quot;list&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;max&quot; with the proper type (19) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;maxLength&quot; with the proper type (20) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;min&quot; with the proper type (21) 
+FAIL HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;minLength&quot; with the proper type (22) assert_inherits: property &quot;minLength&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;multiple&quot; with the proper type (23) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;name&quot; with the proper type (24) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;pattern&quot; with the proper type (25) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;placeholder&quot; with the proper type (26) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;readOnly&quot; with the proper type (27) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;required&quot; with the proper type (28) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;size&quot; with the proper type (29) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;src&quot; with the proper type (30) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;step&quot; with the proper type (31) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;type&quot; with the proper type (32) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;defaultValue&quot; with the proper type (33) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;value&quot; with the proper type (34) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;valueAsDate&quot; with the proper type (35) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;valueAsNumber&quot; with the proper type (36) 
+FAIL HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;valueLow&quot; with the proper type (37) assert_inherits: property &quot;valueLow&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;valueHigh&quot; with the proper type (38) assert_inherits: property &quot;valueHigh&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;width&quot; with the proper type (39) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;stepUp&quot; with the proper type (40) 
+PASS HTMLInputElement interface: calling stepUp(long) on createInput(&quot;image&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;stepDown&quot; with the proper type (41) 
+PASS HTMLInputElement interface: calling stepDown(long) on createInput(&quot;image&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;willValidate&quot; with the proper type (42) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;validity&quot; with the proper type (43) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;validationMessage&quot; with the proper type (44) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;checkValidity&quot; with the proper type (45) 
+FAIL HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;reportValidity&quot; with the proper type (46) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (47) 
+PASS HTMLInputElement interface: calling setCustomValidity(DOMString) on createInput(&quot;image&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;labels&quot; with the proper type (48) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;select&quot; with the proper type (49) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;selectionStart&quot; with the proper type (50) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;selectionEnd&quot; with the proper type (51) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;selectionDirection&quot; with the proper type (52) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;setRangeText&quot; with the proper type (53) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString) on createInput(&quot;image&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;setRangeText&quot; with the proper type (54) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString,unsigned long,unsigned long,SelectionMode) on createInput(&quot;image&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;setSelectionRange&quot; with the proper type (55) 
+PASS HTMLInputElement interface: calling setSelectionRange(unsigned long,unsigned long,DOMString) on createInput(&quot;image&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;align&quot; with the proper type (56) 
+PASS HTMLInputElement interface: createInput(&quot;image&quot;) must inherit property &quot;useMap&quot; with the proper type (57) 
+PASS HTMLInputElement must be primary interface of createInput(&quot;reset&quot;) 
+PASS Stringification of createInput(&quot;reset&quot;) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;accept&quot; with the proper type (0) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;alt&quot; with the proper type (1) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;autocomplete&quot; with the proper type (2) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;autofocus&quot; with the proper type (3) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;defaultChecked&quot; with the proper type (4) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;checked&quot; with the proper type (5) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;dirName&quot; with the proper type (6) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;disabled&quot; with the proper type (7) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;form&quot; with the proper type (8) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;files&quot; with the proper type (9) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;formAction&quot; with the proper type (10) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;formEnctype&quot; with the proper type (11) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;formMethod&quot; with the proper type (12) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;formNoValidate&quot; with the proper type (13) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;formTarget&quot; with the proper type (14) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;height&quot; with the proper type (15) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;indeterminate&quot; with the proper type (16) 
+FAIL HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;inputMode&quot; with the proper type (17) assert_inherits: property &quot;inputMode&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;list&quot; with the proper type (18) assert_inherits: property &quot;list&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;max&quot; with the proper type (19) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;maxLength&quot; with the proper type (20) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;min&quot; with the proper type (21) 
+FAIL HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;minLength&quot; with the proper type (22) assert_inherits: property &quot;minLength&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;multiple&quot; with the proper type (23) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;name&quot; with the proper type (24) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;pattern&quot; with the proper type (25) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;placeholder&quot; with the proper type (26) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;readOnly&quot; with the proper type (27) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;required&quot; with the proper type (28) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;size&quot; with the proper type (29) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;src&quot; with the proper type (30) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;step&quot; with the proper type (31) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;type&quot; with the proper type (32) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;defaultValue&quot; with the proper type (33) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;value&quot; with the proper type (34) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;valueAsDate&quot; with the proper type (35) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;valueAsNumber&quot; with the proper type (36) 
+FAIL HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;valueLow&quot; with the proper type (37) assert_inherits: property &quot;valueLow&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;valueHigh&quot; with the proper type (38) assert_inherits: property &quot;valueHigh&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;width&quot; with the proper type (39) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;stepUp&quot; with the proper type (40) 
+PASS HTMLInputElement interface: calling stepUp(long) on createInput(&quot;reset&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;stepDown&quot; with the proper type (41) 
+PASS HTMLInputElement interface: calling stepDown(long) on createInput(&quot;reset&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;willValidate&quot; with the proper type (42) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;validity&quot; with the proper type (43) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;validationMessage&quot; with the proper type (44) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;checkValidity&quot; with the proper type (45) 
+FAIL HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;reportValidity&quot; with the proper type (46) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (47) 
+PASS HTMLInputElement interface: calling setCustomValidity(DOMString) on createInput(&quot;reset&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;labels&quot; with the proper type (48) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;select&quot; with the proper type (49) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;selectionStart&quot; with the proper type (50) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;selectionEnd&quot; with the proper type (51) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;selectionDirection&quot; with the proper type (52) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;setRangeText&quot; with the proper type (53) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString) on createInput(&quot;reset&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;setRangeText&quot; with the proper type (54) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString,unsigned long,unsigned long,SelectionMode) on createInput(&quot;reset&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;setSelectionRange&quot; with the proper type (55) 
+PASS HTMLInputElement interface: calling setSelectionRange(unsigned long,unsigned long,DOMString) on createInput(&quot;reset&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;align&quot; with the proper type (56) 
+PASS HTMLInputElement interface: createInput(&quot;reset&quot;) must inherit property &quot;useMap&quot; with the proper type (57) 
+PASS HTMLInputElement must be primary interface of createInput(&quot;button&quot;) 
+PASS Stringification of createInput(&quot;button&quot;) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;accept&quot; with the proper type (0) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;alt&quot; with the proper type (1) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;autocomplete&quot; with the proper type (2) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;autofocus&quot; with the proper type (3) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;defaultChecked&quot; with the proper type (4) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;checked&quot; with the proper type (5) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;dirName&quot; with the proper type (6) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;disabled&quot; with the proper type (7) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;form&quot; with the proper type (8) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;files&quot; with the proper type (9) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;formAction&quot; with the proper type (10) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;formEnctype&quot; with the proper type (11) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;formMethod&quot; with the proper type (12) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;formNoValidate&quot; with the proper type (13) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;formTarget&quot; with the proper type (14) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;height&quot; with the proper type (15) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;indeterminate&quot; with the proper type (16) 
+FAIL HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;inputMode&quot; with the proper type (17) assert_inherits: property &quot;inputMode&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;list&quot; with the proper type (18) assert_inherits: property &quot;list&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;max&quot; with the proper type (19) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;maxLength&quot; with the proper type (20) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;min&quot; with the proper type (21) 
+FAIL HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;minLength&quot; with the proper type (22) assert_inherits: property &quot;minLength&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;multiple&quot; with the proper type (23) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;name&quot; with the proper type (24) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;pattern&quot; with the proper type (25) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;placeholder&quot; with the proper type (26) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;readOnly&quot; with the proper type (27) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;required&quot; with the proper type (28) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;size&quot; with the proper type (29) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;src&quot; with the proper type (30) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;step&quot; with the proper type (31) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;type&quot; with the proper type (32) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;defaultValue&quot; with the proper type (33) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;value&quot; with the proper type (34) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;valueAsDate&quot; with the proper type (35) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;valueAsNumber&quot; with the proper type (36) 
+FAIL HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;valueLow&quot; with the proper type (37) assert_inherits: property &quot;valueLow&quot; not found in prototype chain
+FAIL HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;valueHigh&quot; with the proper type (38) assert_inherits: property &quot;valueHigh&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;width&quot; with the proper type (39) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;stepUp&quot; with the proper type (40) 
+PASS HTMLInputElement interface: calling stepUp(long) on createInput(&quot;button&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;stepDown&quot; with the proper type (41) 
+PASS HTMLInputElement interface: calling stepDown(long) on createInput(&quot;button&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;willValidate&quot; with the proper type (42) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;validity&quot; with the proper type (43) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;validationMessage&quot; with the proper type (44) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;checkValidity&quot; with the proper type (45) 
+FAIL HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;reportValidity&quot; with the proper type (46) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (47) 
+PASS HTMLInputElement interface: calling setCustomValidity(DOMString) on createInput(&quot;button&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;labels&quot; with the proper type (48) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;select&quot; with the proper type (49) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;selectionStart&quot; with the proper type (50) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;selectionEnd&quot; with the proper type (51) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;selectionDirection&quot; with the proper type (52) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;setRangeText&quot; with the proper type (53) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString) on createInput(&quot;button&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;setRangeText&quot; with the proper type (54) 
+PASS HTMLInputElement interface: calling setRangeText(DOMString,unsigned long,unsigned long,SelectionMode) on createInput(&quot;button&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;setSelectionRange&quot; with the proper type (55) 
+PASS HTMLInputElement interface: calling setSelectionRange(unsigned long,unsigned long,DOMString) on createInput(&quot;button&quot;) with too few arguments must throw TypeError 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;align&quot; with the proper type (56) 
+PASS HTMLInputElement interface: createInput(&quot;button&quot;) must inherit property &quot;useMap&quot; with the proper type (57) 
+PASS HTMLButtonElement interface: existence and properties of interface object 
+PASS HTMLButtonElement interface object length 
+PASS HTMLButtonElement interface object name 
+PASS HTMLButtonElement interface: existence and properties of interface prototype object 
+PASS HTMLButtonElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLButtonElement interface: attribute autofocus 
+PASS HTMLButtonElement interface: attribute disabled 
+PASS HTMLButtonElement interface: attribute form 
+PASS HTMLButtonElement interface: attribute formAction 
+PASS HTMLButtonElement interface: attribute formEnctype 
+PASS HTMLButtonElement interface: attribute formMethod 
+PASS HTMLButtonElement interface: attribute formNoValidate 
+PASS HTMLButtonElement interface: attribute formTarget 
+PASS HTMLButtonElement interface: attribute name 
+PASS HTMLButtonElement interface: attribute type 
+PASS HTMLButtonElement interface: attribute value 
+FAIL HTMLButtonElement interface: attribute menu assert_true: The prototype object must have a property &quot;menu&quot; expected true got false
+PASS HTMLButtonElement interface: attribute willValidate 
+PASS HTMLButtonElement interface: attribute validity 
+PASS HTMLButtonElement interface: attribute validationMessage 
+PASS HTMLButtonElement interface: operation checkValidity() 
+FAIL HTMLButtonElement interface: operation reportValidity() assert_own_property: interface prototype object missing non-static operation expected property &quot;reportValidity&quot; missing
+PASS HTMLButtonElement interface: operation setCustomValidity(DOMString) 
+PASS HTMLButtonElement interface: attribute labels 
+PASS HTMLButtonElement must be primary interface of document.createElement(&quot;button&quot;) 
+PASS Stringification of document.createElement(&quot;button&quot;) 
+PASS HTMLButtonElement interface: document.createElement(&quot;button&quot;) must inherit property &quot;autofocus&quot; with the proper type (0) 
+PASS HTMLButtonElement interface: document.createElement(&quot;button&quot;) must inherit property &quot;disabled&quot; with the proper type (1) 
+PASS HTMLButtonElement interface: document.createElement(&quot;button&quot;) must inherit property &quot;form&quot; with the proper type (2) 
+PASS HTMLButtonElement interface: document.createElement(&quot;button&quot;) must inherit property &quot;formAction&quot; with the proper type (3) 
+PASS HTMLButtonElement interface: document.createElement(&quot;button&quot;) must inherit property &quot;formEnctype&quot; with the proper type (4) 
+PASS HTMLButtonElement interface: document.createElement(&quot;button&quot;) must inherit property &quot;formMethod&quot; with the proper type (5) 
+PASS HTMLButtonElement interface: document.createElement(&quot;button&quot;) must inherit property &quot;formNoValidate&quot; with the proper type (6) 
+PASS HTMLButtonElement interface: document.createElement(&quot;button&quot;) must inherit property &quot;formTarget&quot; with the proper type (7) 
+PASS HTMLButtonElement interface: document.createElement(&quot;button&quot;) must inherit property &quot;name&quot; with the proper type (8) 
+PASS HTMLButtonElement interface: document.createElement(&quot;button&quot;) must inherit property &quot;type&quot; with the proper type (9) 
+PASS HTMLButtonElement interface: document.createElement(&quot;button&quot;) must inherit property &quot;value&quot; with the proper type (10) 
+FAIL HTMLButtonElement interface: document.createElement(&quot;button&quot;) must inherit property &quot;menu&quot; with the proper type (11) assert_inherits: property &quot;menu&quot; not found in prototype chain
+PASS HTMLButtonElement interface: document.createElement(&quot;button&quot;) must inherit property &quot;willValidate&quot; with the proper type (12) 
+PASS HTMLButtonElement interface: document.createElement(&quot;button&quot;) must inherit property &quot;validity&quot; with the proper type (13) 
+PASS HTMLButtonElement interface: document.createElement(&quot;button&quot;) must inherit property &quot;validationMessage&quot; with the proper type (14) 
+PASS HTMLButtonElement interface: document.createElement(&quot;button&quot;) must inherit property &quot;checkValidity&quot; with the proper type (15) 
+FAIL HTMLButtonElement interface: document.createElement(&quot;button&quot;) must inherit property &quot;reportValidity&quot; with the proper type (16) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLButtonElement interface: document.createElement(&quot;button&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (17) 
+PASS HTMLButtonElement interface: calling setCustomValidity(DOMString) on document.createElement(&quot;button&quot;) with too few arguments must throw TypeError 
+PASS HTMLButtonElement interface: document.createElement(&quot;button&quot;) must inherit property &quot;labels&quot; with the proper type (18) 
+PASS HTMLSelectElement interface: existence and properties of interface object 
+PASS HTMLSelectElement interface object length 
+PASS HTMLSelectElement interface object name 
+PASS HTMLSelectElement interface: existence and properties of interface prototype object 
+PASS HTMLSelectElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLSelectElement interface: attribute autocomplete 
+PASS HTMLSelectElement interface: attribute autofocus 
+PASS HTMLSelectElement interface: attribute disabled 
+PASS HTMLSelectElement interface: attribute form 
+PASS HTMLSelectElement interface: attribute multiple 
+PASS HTMLSelectElement interface: attribute name 
+PASS HTMLSelectElement interface: attribute required 
+PASS HTMLSelectElement interface: attribute size 
+PASS HTMLSelectElement interface: attribute type 
+PASS HTMLSelectElement interface: attribute options 
+PASS HTMLSelectElement interface: attribute length 
+PASS HTMLSelectElement interface: operation item(unsigned long) 
+FAIL HTMLSelectElement interface: operation namedItem(DOMString) assert_equals: property has wrong .length expected 1 but got 0
+PASS HTMLSelectElement interface: operation add([object Object],[object Object],[object Object],[object Object]) 
+PASS HTMLSelectElement interface: operation remove() 
+PASS HTMLSelectElement interface: operation remove(long) 
+PASS HTMLSelectElement interface: attribute selectedOptions 
+PASS HTMLSelectElement interface: attribute selectedIndex 
+PASS HTMLSelectElement interface: attribute value 
+PASS HTMLSelectElement interface: attribute willValidate 
+PASS HTMLSelectElement interface: attribute validity 
+PASS HTMLSelectElement interface: attribute validationMessage 
+PASS HTMLSelectElement interface: operation checkValidity() 
+FAIL HTMLSelectElement interface: operation reportValidity() assert_own_property: interface prototype object missing non-static operation expected property &quot;reportValidity&quot; missing
+PASS HTMLSelectElement interface: operation setCustomValidity(DOMString) 
+PASS HTMLSelectElement interface: attribute labels 
+PASS HTMLSelectElement must be primary interface of document.createElement(&quot;select&quot;) 
+PASS Stringification of document.createElement(&quot;select&quot;) 
+PASS HTMLSelectElement interface: document.createElement(&quot;select&quot;) must inherit property &quot;autocomplete&quot; with the proper type (0) 
+PASS HTMLSelectElement interface: document.createElement(&quot;select&quot;) must inherit property &quot;autofocus&quot; with the proper type (1) 
+PASS HTMLSelectElement interface: document.createElement(&quot;select&quot;) must inherit property &quot;disabled&quot; with the proper type (2) 
+PASS HTMLSelectElement interface: document.createElement(&quot;select&quot;) must inherit property &quot;form&quot; with the proper type (3) 
+PASS HTMLSelectElement interface: document.createElement(&quot;select&quot;) must inherit property &quot;multiple&quot; with the proper type (4) 
+PASS HTMLSelectElement interface: document.createElement(&quot;select&quot;) must inherit property &quot;name&quot; with the proper type (5) 
+PASS HTMLSelectElement interface: document.createElement(&quot;select&quot;) must inherit property &quot;required&quot; with the proper type (6) 
+PASS HTMLSelectElement interface: document.createElement(&quot;select&quot;) must inherit property &quot;size&quot; with the proper type (7) 
+PASS HTMLSelectElement interface: document.createElement(&quot;select&quot;) must inherit property &quot;type&quot; with the proper type (8) 
+PASS HTMLSelectElement interface: document.createElement(&quot;select&quot;) must inherit property &quot;options&quot; with the proper type (9) 
+PASS HTMLSelectElement interface: document.createElement(&quot;select&quot;) must inherit property &quot;length&quot; with the proper type (10) 
+PASS HTMLSelectElement interface: document.createElement(&quot;select&quot;) must inherit property &quot;item&quot; with the proper type (11) 
+PASS HTMLSelectElement interface: calling item(unsigned long) on document.createElement(&quot;select&quot;) with too few arguments must throw TypeError 
+PASS HTMLSelectElement interface: document.createElement(&quot;select&quot;) must inherit property &quot;namedItem&quot; with the proper type (12) 
+FAIL HTMLSelectElement interface: calling namedItem(DOMString) on document.createElement(&quot;select&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS HTMLSelectElement interface: document.createElement(&quot;select&quot;) must inherit property &quot;add&quot; with the proper type (13) 
+PASS HTMLSelectElement interface: calling add([object Object],[object Object],[object Object],[object Object]) on document.createElement(&quot;select&quot;) with too few arguments must throw TypeError 
+PASS HTMLSelectElement interface: document.createElement(&quot;select&quot;) must inherit property &quot;remove&quot; with the proper type (14) 
+PASS HTMLSelectElement interface: document.createElement(&quot;select&quot;) must inherit property &quot;remove&quot; with the proper type (15) 
+PASS HTMLSelectElement interface: calling remove(long) on document.createElement(&quot;select&quot;) with too few arguments must throw TypeError 
+PASS HTMLSelectElement interface: document.createElement(&quot;select&quot;) must inherit property &quot;selectedOptions&quot; with the proper type (17) 
+PASS HTMLSelectElement interface: document.createElement(&quot;select&quot;) must inherit property &quot;selectedIndex&quot; with the proper type (18) 
+PASS HTMLSelectElement interface: document.createElement(&quot;select&quot;) must inherit property &quot;value&quot; with the proper type (19) 
+PASS HTMLSelectElement interface: document.createElement(&quot;select&quot;) must inherit property &quot;willValidate&quot; with the proper type (20) 
+PASS HTMLSelectElement interface: document.createElement(&quot;select&quot;) must inherit property &quot;validity&quot; with the proper type (21) 
+PASS HTMLSelectElement interface: document.createElement(&quot;select&quot;) must inherit property &quot;validationMessage&quot; with the proper type (22) 
+PASS HTMLSelectElement interface: document.createElement(&quot;select&quot;) must inherit property &quot;checkValidity&quot; with the proper type (23) 
+FAIL HTMLSelectElement interface: document.createElement(&quot;select&quot;) must inherit property &quot;reportValidity&quot; with the proper type (24) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLSelectElement interface: document.createElement(&quot;select&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (25) 
+PASS HTMLSelectElement interface: calling setCustomValidity(DOMString) on document.createElement(&quot;select&quot;) with too few arguments must throw TypeError 
+PASS HTMLSelectElement interface: document.createElement(&quot;select&quot;) must inherit property &quot;labels&quot; with the proper type (26) 
+FAIL HTMLDataListElement interface: existence and properties of interface object assert_own_property: self does not have own property &quot;HTMLDataListElement&quot; expected property &quot;HTMLDataListElement&quot; missing
+FAIL HTMLDataListElement interface object length assert_own_property: self does not have own property &quot;HTMLDataListElement&quot; expected property &quot;HTMLDataListElement&quot; missing
+FAIL HTMLDataListElement interface object name assert_own_property: self does not have own property &quot;HTMLDataListElement&quot; expected property &quot;HTMLDataListElement&quot; missing
+FAIL HTMLDataListElement interface: existence and properties of interface prototype object assert_own_property: self does not have own property &quot;HTMLDataListElement&quot; expected property &quot;HTMLDataListElement&quot; missing
+FAIL HTMLDataListElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property assert_own_property: self does not have own property &quot;HTMLDataListElement&quot; expected property &quot;HTMLDataListElement&quot; missing
+FAIL HTMLDataListElement interface: attribute options assert_own_property: self does not have own property &quot;HTMLDataListElement&quot; expected property &quot;HTMLDataListElement&quot; missing
+FAIL HTMLDataListElement must be primary interface of document.createElement(&quot;datalist&quot;) assert_own_property: self does not have own property &quot;HTMLDataListElement&quot; expected property &quot;HTMLDataListElement&quot; missing
+FAIL Stringification of document.createElement(&quot;datalist&quot;) assert_equals: class string of document.createElement(&quot;datalist&quot;) expected &quot;[object HTMLDataListElement]&quot; but got &quot;[object HTMLUnknownElement]&quot;
+FAIL HTMLDataListElement interface: document.createElement(&quot;datalist&quot;) must inherit property &quot;options&quot; with the proper type (0) assert_inherits: property &quot;options&quot; not found in prototype chain
+PASS HTMLOptGroupElement interface: existence and properties of interface object 
+PASS HTMLOptGroupElement interface object length 
+PASS HTMLOptGroupElement interface object name 
+PASS HTMLOptGroupElement interface: existence and properties of interface prototype object 
+PASS HTMLOptGroupElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLOptGroupElement interface: attribute disabled 
+PASS HTMLOptGroupElement interface: attribute label 
+PASS HTMLOptGroupElement must be primary interface of document.createElement(&quot;optgroup&quot;) 
+PASS Stringification of document.createElement(&quot;optgroup&quot;) 
+PASS HTMLOptGroupElement interface: document.createElement(&quot;optgroup&quot;) must inherit property &quot;disabled&quot; with the proper type (0) 
+PASS HTMLOptGroupElement interface: document.createElement(&quot;optgroup&quot;) must inherit property &quot;label&quot; with the proper type (1) 
+PASS HTMLOptionElement interface: existence and properties of interface object 
+PASS HTMLOptionElement interface object length 
+PASS HTMLOptionElement interface object name 
+PASS HTMLOptionElement interface: existence and properties of interface prototype object 
+PASS HTMLOptionElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLOptionElement interface: attribute disabled 
+PASS HTMLOptionElement interface: attribute form 
+PASS HTMLOptionElement interface: attribute label 
+PASS HTMLOptionElement interface: attribute defaultSelected 
+PASS HTMLOptionElement interface: attribute selected 
+PASS HTMLOptionElement interface: attribute value 
+PASS HTMLOptionElement interface: attribute text 
+PASS HTMLOptionElement interface: attribute index 
+PASS HTMLOptionElement must be primary interface of document.createElement(&quot;option&quot;) 
+PASS Stringification of document.createElement(&quot;option&quot;) 
+PASS HTMLOptionElement interface: document.createElement(&quot;option&quot;) must inherit property &quot;disabled&quot; with the proper type (0) 
+PASS HTMLOptionElement interface: document.createElement(&quot;option&quot;) must inherit property &quot;form&quot; with the proper type (1) 
+PASS HTMLOptionElement interface: document.createElement(&quot;option&quot;) must inherit property &quot;label&quot; with the proper type (2) 
+PASS HTMLOptionElement interface: document.createElement(&quot;option&quot;) must inherit property &quot;defaultSelected&quot; with the proper type (3) 
+PASS HTMLOptionElement interface: document.createElement(&quot;option&quot;) must inherit property &quot;selected&quot; with the proper type (4) 
+PASS HTMLOptionElement interface: document.createElement(&quot;option&quot;) must inherit property &quot;value&quot; with the proper type (5) 
+PASS HTMLOptionElement interface: document.createElement(&quot;option&quot;) must inherit property &quot;text&quot; with the proper type (6) 
+PASS HTMLOptionElement interface: document.createElement(&quot;option&quot;) must inherit property &quot;index&quot; with the proper type (7) 
+PASS HTMLOptionElement must be primary interface of new Option() 
+PASS Stringification of new Option() 
+PASS HTMLOptionElement interface: new Option() must inherit property &quot;disabled&quot; with the proper type (0) 
+PASS HTMLOptionElement interface: new Option() must inherit property &quot;form&quot; with the proper type (1) 
+PASS HTMLOptionElement interface: new Option() must inherit property &quot;label&quot; with the proper type (2) 
+PASS HTMLOptionElement interface: new Option() must inherit property &quot;defaultSelected&quot; with the proper type (3) 
+PASS HTMLOptionElement interface: new Option() must inherit property &quot;selected&quot; with the proper type (4) 
+PASS HTMLOptionElement interface: new Option() must inherit property &quot;value&quot; with the proper type (5) 
+PASS HTMLOptionElement interface: new Option() must inherit property &quot;text&quot; with the proper type (6) 
+PASS HTMLOptionElement interface: new Option() must inherit property &quot;index&quot; with the proper type (7) 
+PASS HTMLTextAreaElement interface: existence and properties of interface object 
+PASS HTMLTextAreaElement interface object length 
+PASS HTMLTextAreaElement interface object name 
+PASS HTMLTextAreaElement interface: existence and properties of interface prototype object 
+PASS HTMLTextAreaElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLTextAreaElement interface: attribute autocomplete 
+PASS HTMLTextAreaElement interface: attribute autofocus 
+PASS HTMLTextAreaElement interface: attribute cols 
+PASS HTMLTextAreaElement interface: attribute dirName 
+PASS HTMLTextAreaElement interface: attribute disabled 
+PASS HTMLTextAreaElement interface: attribute form 
+FAIL HTMLTextAreaElement interface: attribute inputMode assert_true: The prototype object must have a property &quot;inputMode&quot; expected true got false
+PASS HTMLTextAreaElement interface: attribute maxLength 
+FAIL HTMLTextAreaElement interface: attribute minLength assert_true: The prototype object must have a property &quot;minLength&quot; expected true got false
+PASS HTMLTextAreaElement interface: attribute name 
+PASS HTMLTextAreaElement interface: attribute placeholder 
+PASS HTMLTextAreaElement interface: attribute readOnly 
+PASS HTMLTextAreaElement interface: attribute required 
+PASS HTMLTextAreaElement interface: attribute rows 
+PASS HTMLTextAreaElement interface: attribute wrap 
+PASS HTMLTextAreaElement interface: attribute type 
+PASS HTMLTextAreaElement interface: attribute defaultValue 
+PASS HTMLTextAreaElement interface: attribute value 
+PASS HTMLTextAreaElement interface: attribute textLength 
+PASS HTMLTextAreaElement interface: attribute willValidate 
+PASS HTMLTextAreaElement interface: attribute validity 
+PASS HTMLTextAreaElement interface: attribute validationMessage 
+PASS HTMLTextAreaElement interface: operation checkValidity() 
+FAIL HTMLTextAreaElement interface: operation reportValidity() assert_own_property: interface prototype object missing non-static operation expected property &quot;reportValidity&quot; missing
+PASS HTMLTextAreaElement interface: operation setCustomValidity(DOMString) 
+PASS HTMLTextAreaElement interface: attribute labels 
+PASS HTMLTextAreaElement interface: operation select() 
+PASS HTMLTextAreaElement interface: attribute selectionStart 
+PASS HTMLTextAreaElement interface: attribute selectionEnd 
+PASS HTMLTextAreaElement interface: attribute selectionDirection 
+PASS HTMLTextAreaElement interface: operation setRangeText(DOMString) 
+PASS HTMLTextAreaElement interface: operation setRangeText(DOMString,unsigned long,unsigned long,SelectionMode) 
+FAIL HTMLTextAreaElement interface: operation setSelectionRange(unsigned long,unsigned long,DOMString) assert_equals: property has wrong .length expected 2 but got 0
+PASS HTMLTextAreaElement must be primary interface of document.createElement(&quot;textarea&quot;) 
+PASS Stringification of document.createElement(&quot;textarea&quot;) 
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;autocomplete&quot; with the proper type (0) 
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;autofocus&quot; with the proper type (1) 
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;cols&quot; with the proper type (2) 
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;dirName&quot; with the proper type (3) 
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;disabled&quot; with the proper type (4) 
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;form&quot; with the proper type (5) 
+FAIL HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;inputMode&quot; with the proper type (6) assert_inherits: property &quot;inputMode&quot; not found in prototype chain
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;maxLength&quot; with the proper type (7) 
+FAIL HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;minLength&quot; with the proper type (8) assert_inherits: property &quot;minLength&quot; not found in prototype chain
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;name&quot; with the proper type (9) 
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;placeholder&quot; with the proper type (10) 
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;readOnly&quot; with the proper type (11) 
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;required&quot; with the proper type (12) 
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;rows&quot; with the proper type (13) 
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;wrap&quot; with the proper type (14) 
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;type&quot; with the proper type (15) 
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;defaultValue&quot; with the proper type (16) 
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;value&quot; with the proper type (17) 
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;textLength&quot; with the proper type (18) 
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;willValidate&quot; with the proper type (19) 
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;validity&quot; with the proper type (20) 
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;validationMessage&quot; with the proper type (21) 
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;checkValidity&quot; with the proper type (22) 
+FAIL HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;reportValidity&quot; with the proper type (23) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (24) 
+PASS HTMLTextAreaElement interface: calling setCustomValidity(DOMString) on document.createElement(&quot;textarea&quot;) with too few arguments must throw TypeError 
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;labels&quot; with the proper type (25) 
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;select&quot; with the proper type (26) 
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;selectionStart&quot; with the proper type (27) 
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;selectionEnd&quot; with the proper type (28) 
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;selectionDirection&quot; with the proper type (29) 
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;setRangeText&quot; with the proper type (30) 
+PASS HTMLTextAreaElement interface: calling setRangeText(DOMString) on document.createElement(&quot;textarea&quot;) with too few arguments must throw TypeError 
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;setRangeText&quot; with the proper type (31) 
+PASS HTMLTextAreaElement interface: calling setRangeText(DOMString,unsigned long,unsigned long,SelectionMode) on document.createElement(&quot;textarea&quot;) with too few arguments must throw TypeError 
+PASS HTMLTextAreaElement interface: document.createElement(&quot;textarea&quot;) must inherit property &quot;setSelectionRange&quot; with the proper type (32) 
+FAIL HTMLTextAreaElement interface: calling setSelectionRange(unsigned long,unsigned long,DOMString) on document.createElement(&quot;textarea&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS HTMLKeygenElement interface: existence and properties of interface object 
+PASS HTMLKeygenElement interface object length 
+PASS HTMLKeygenElement interface object name 
+PASS HTMLKeygenElement interface: existence and properties of interface prototype object 
+PASS HTMLKeygenElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLKeygenElement interface: attribute autofocus 
+PASS HTMLKeygenElement interface: attribute challenge 
+PASS HTMLKeygenElement interface: attribute disabled 
+PASS HTMLKeygenElement interface: attribute form 
+PASS HTMLKeygenElement interface: attribute keytype 
+PASS HTMLKeygenElement interface: attribute name 
+PASS HTMLKeygenElement interface: attribute type 
+PASS HTMLKeygenElement interface: attribute willValidate 
+PASS HTMLKeygenElement interface: attribute validity 
+PASS HTMLKeygenElement interface: attribute validationMessage 
+PASS HTMLKeygenElement interface: operation checkValidity() 
+FAIL HTMLKeygenElement interface: operation reportValidity() assert_own_property: interface prototype object missing non-static operation expected property &quot;reportValidity&quot; missing
+PASS HTMLKeygenElement interface: operation setCustomValidity(DOMString) 
+PASS HTMLKeygenElement interface: attribute labels 
+PASS HTMLKeygenElement must be primary interface of document.createElement(&quot;keygen&quot;) 
+PASS Stringification of document.createElement(&quot;keygen&quot;) 
+PASS HTMLKeygenElement interface: document.createElement(&quot;keygen&quot;) must inherit property &quot;autofocus&quot; with the proper type (0) 
+PASS HTMLKeygenElement interface: document.createElement(&quot;keygen&quot;) must inherit property &quot;challenge&quot; with the proper type (1) 
+PASS HTMLKeygenElement interface: document.createElement(&quot;keygen&quot;) must inherit property &quot;disabled&quot; with the proper type (2) 
+PASS HTMLKeygenElement interface: document.createElement(&quot;keygen&quot;) must inherit property &quot;form&quot; with the proper type (3) 
+PASS HTMLKeygenElement interface: document.createElement(&quot;keygen&quot;) must inherit property &quot;keytype&quot; with the proper type (4) 
+PASS HTMLKeygenElement interface: document.createElement(&quot;keygen&quot;) must inherit property &quot;name&quot; with the proper type (5) 
+PASS HTMLKeygenElement interface: document.createElement(&quot;keygen&quot;) must inherit property &quot;type&quot; with the proper type (6) 
+PASS HTMLKeygenElement interface: document.createElement(&quot;keygen&quot;) must inherit property &quot;willValidate&quot; with the proper type (7) 
+PASS HTMLKeygenElement interface: document.createElement(&quot;keygen&quot;) must inherit property &quot;validity&quot; with the proper type (8) 
+PASS HTMLKeygenElement interface: document.createElement(&quot;keygen&quot;) must inherit property &quot;validationMessage&quot; with the proper type (9) 
+PASS HTMLKeygenElement interface: document.createElement(&quot;keygen&quot;) must inherit property &quot;checkValidity&quot; with the proper type (10) 
+FAIL HTMLKeygenElement interface: document.createElement(&quot;keygen&quot;) must inherit property &quot;reportValidity&quot; with the proper type (11) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLKeygenElement interface: document.createElement(&quot;keygen&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (12) 
+PASS HTMLKeygenElement interface: calling setCustomValidity(DOMString) on document.createElement(&quot;keygen&quot;) with too few arguments must throw TypeError 
+PASS HTMLKeygenElement interface: document.createElement(&quot;keygen&quot;) must inherit property &quot;labels&quot; with the proper type (13) 
+PASS HTMLOutputElement interface: existence and properties of interface object 
+PASS HTMLOutputElement interface object length 
+PASS HTMLOutputElement interface object name 
+PASS HTMLOutputElement interface: existence and properties of interface prototype object 
+PASS HTMLOutputElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLOutputElement interface: attribute htmlFor 
+PASS HTMLOutputElement interface: attribute form 
+PASS HTMLOutputElement interface: attribute name 
+PASS HTMLOutputElement interface: attribute type 
+PASS HTMLOutputElement interface: attribute defaultValue 
+PASS HTMLOutputElement interface: attribute value 
+PASS HTMLOutputElement interface: attribute willValidate 
+PASS HTMLOutputElement interface: attribute validity 
+PASS HTMLOutputElement interface: attribute validationMessage 
+PASS HTMLOutputElement interface: operation checkValidity() 
+FAIL HTMLOutputElement interface: operation reportValidity() assert_own_property: interface prototype object missing non-static operation expected property &quot;reportValidity&quot; missing
+PASS HTMLOutputElement interface: operation setCustomValidity(DOMString) 
+PASS HTMLOutputElement interface: attribute labels 
+PASS HTMLOutputElement must be primary interface of document.createElement(&quot;output&quot;) 
+PASS Stringification of document.createElement(&quot;output&quot;) 
+PASS HTMLOutputElement interface: document.createElement(&quot;output&quot;) must inherit property &quot;htmlFor&quot; with the proper type (0) 
+PASS HTMLOutputElement interface: document.createElement(&quot;output&quot;) must inherit property &quot;form&quot; with the proper type (1) 
+PASS HTMLOutputElement interface: document.createElement(&quot;output&quot;) must inherit property &quot;name&quot; with the proper type (2) 
+PASS HTMLOutputElement interface: document.createElement(&quot;output&quot;) must inherit property &quot;type&quot; with the proper type (3) 
+PASS HTMLOutputElement interface: document.createElement(&quot;output&quot;) must inherit property &quot;defaultValue&quot; with the proper type (4) 
+PASS HTMLOutputElement interface: document.createElement(&quot;output&quot;) must inherit property &quot;value&quot; with the proper type (5) 
+PASS HTMLOutputElement interface: document.createElement(&quot;output&quot;) must inherit property &quot;willValidate&quot; with the proper type (6) 
+PASS HTMLOutputElement interface: document.createElement(&quot;output&quot;) must inherit property &quot;validity&quot; with the proper type (7) 
+PASS HTMLOutputElement interface: document.createElement(&quot;output&quot;) must inherit property &quot;validationMessage&quot; with the proper type (8) 
+PASS HTMLOutputElement interface: document.createElement(&quot;output&quot;) must inherit property &quot;checkValidity&quot; with the proper type (9) 
+FAIL HTMLOutputElement interface: document.createElement(&quot;output&quot;) must inherit property &quot;reportValidity&quot; with the proper type (10) assert_inherits: property &quot;reportValidity&quot; not found in prototype chain
+PASS HTMLOutputElement interface: document.createElement(&quot;output&quot;) must inherit property &quot;setCustomValidity&quot; with the proper type (11) 
+PASS HTMLOutputElement interface: calling setCustomValidity(DOMString) on document.createElement(&quot;output&quot;) with too few arguments must throw TypeError 
+PASS HTMLOutputElement interface: document.createElement(&quot;output&quot;) must inherit property &quot;labels&quot; with the proper type (12) 
+PASS HTMLProgressElement interface: existence and properties of interface object 
+PASS HTMLProgressElement interface object length 
+PASS HTMLProgressElement interface object name 
+PASS HTMLProgressElement interface: existence and properties of interface prototype object 
+PASS HTMLProgressElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLProgressElement interface: attribute value 
+PASS HTMLProgressElement interface: attribute max 
+PASS HTMLProgressElement interface: attribute position 
+PASS HTMLProgressElement interface: attribute labels 
+PASS HTMLProgressElement must be primary interface of document.createElement(&quot;progress&quot;) 
+PASS Stringification of document.createElement(&quot;progress&quot;) 
+PASS HTMLProgressElement interface: document.createElement(&quot;progress&quot;) must inherit property &quot;value&quot; with the proper type (0) 
+PASS HTMLProgressElement interface: document.createElement(&quot;progress&quot;) must inherit property &quot;max&quot; with the proper type (1) 
+PASS HTMLProgressElement interface: document.createElement(&quot;progress&quot;) must inherit property &quot;position&quot; with the proper type (2) 
+PASS HTMLProgressElement interface: document.createElement(&quot;progress&quot;) must inherit property &quot;labels&quot; with the proper type (3) 
+PASS HTMLMeterElement interface: existence and properties of interface object 
+PASS HTMLMeterElement interface object length 
+PASS HTMLMeterElement interface object name 
+PASS HTMLMeterElement interface: existence and properties of interface prototype object 
+PASS HTMLMeterElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLMeterElement interface: attribute value 
+PASS HTMLMeterElement interface: attribute min 
+PASS HTMLMeterElement interface: attribute max 
+PASS HTMLMeterElement interface: attribute low 
+PASS HTMLMeterElement interface: attribute high 
+PASS HTMLMeterElement interface: attribute optimum 
+PASS HTMLMeterElement interface: attribute labels 
+PASS HTMLMeterElement must be primary interface of document.createElement(&quot;meter&quot;) 
+PASS Stringification of document.createElement(&quot;meter&quot;) 
+PASS HTMLMeterElement interface: document.createElement(&quot;meter&quot;) must inherit property &quot;value&quot; with the proper type (0) 
+PASS HTMLMeterElement interface: document.createElement(&quot;meter&quot;) must inherit property &quot;min&quot; with the proper type (1) 
+PASS HTMLMeterElement interface: document.createElement(&quot;meter&quot;) must inherit property &quot;max&quot; with the proper type (2) 
+PASS HTMLMeterElement interface: document.createElement(&quot;meter&quot;) must inherit property &quot;low&quot; with the proper type (3) 
+PASS HTMLMeterElement interface: document.createElement(&quot;meter&quot;) must inherit property &quot;high&quot; with the proper type (4) 
+PASS HTMLMeterElement interface: document.createElement(&quot;meter&quot;) must inherit property &quot;optimum&quot; with the proper type (5) 
+PASS HTMLMeterElement interface: document.createElement(&quot;meter&quot;) must inherit property &quot;labels&quot; with the proper type (6) 
+PASS HTMLFieldSetElement interface: existence and properties of interface object 
+PASS HTMLFieldSetElement interface object length 
+PASS HTMLFieldSetElement interface object name 
+PASS HTMLFieldSetElement interface: existence and properties of interface prototype object 
+PASS HTMLFieldSetElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLFieldSetElement interface: attribute disabled 
+PASS HTMLFieldSetElement interface: attribute form 
+PASS HTMLFieldSetElement interface: attribute name 
+PASS HTMLFieldSetElement interface: attribute type 
+PASS HTMLFieldSetElement interface: attribute elements 
+PASS HTMLFieldSetElement interface: attribute willValidate 
+PASS HTMLFieldSetElement interface: attribute validity 
+PASS HTMLFieldSetElement interface: attribute validationMessage 
+PASS HTMLFieldSetElement interface: operation checkValidity() 
+FAIL HTMLFieldSetElement interface: operation reportValidity() assert_own_property: interface prototype object missing non-static operation expected property &quot;reportValidity&quot; missing
+PASS HTMLFieldSetElement interface: operation setCustomValidity(DOMString) 
+PASS HTMLLegendElement interface: existence and properties of interface object 
+PASS HTMLLegendElement interface object length 
+PASS HTMLLegendElement interface object name 
+PASS HTMLLegendElement interface: existence and properties of interface prototype object 
+PASS HTMLLegendElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLLegendElement interface: attribute form 
+PASS HTMLLegendElement interface: attribute align 
+PASS HTMLLegendElement must be primary interface of document.createElement(&quot;legend&quot;) 
+PASS Stringification of document.createElement(&quot;legend&quot;) 
+PASS HTMLLegendElement interface: document.createElement(&quot;legend&quot;) must inherit property &quot;form&quot; with the proper type (0) 
+PASS HTMLLegendElement interface: document.createElement(&quot;legend&quot;) must inherit property &quot;align&quot; with the proper type (1) 
+FAIL AutocompleteErrorEvent interface: existence and properties of interface object assert_own_property: self does not have own property &quot;AutocompleteErrorEvent&quot; expected property &quot;AutocompleteErrorEvent&quot; missing
+FAIL AutocompleteErrorEvent interface object length assert_own_property: self does not have own property &quot;AutocompleteErrorEvent&quot; expected property &quot;AutocompleteErrorEvent&quot; missing
+FAIL AutocompleteErrorEvent interface object name assert_own_property: self does not have own property &quot;AutocompleteErrorEvent&quot; expected property &quot;AutocompleteErrorEvent&quot; missing
+FAIL AutocompleteErrorEvent interface: existence and properties of interface prototype object assert_own_property: self does not have own property &quot;AutocompleteErrorEvent&quot; expected property &quot;AutocompleteErrorEvent&quot; missing
+FAIL AutocompleteErrorEvent interface: existence and properties of interface prototype object's &quot;constructor&quot; property assert_own_property: self does not have own property &quot;AutocompleteErrorEvent&quot; expected property &quot;AutocompleteErrorEvent&quot; missing
+FAIL AutocompleteErrorEvent interface: attribute reason assert_own_property: self does not have own property &quot;AutocompleteErrorEvent&quot; expected property &quot;AutocompleteErrorEvent&quot; missing
+PASS ValidityState interface: existence and properties of interface object 
+PASS ValidityState interface object length 
+PASS ValidityState interface object name 
+PASS ValidityState interface: existence and properties of interface prototype object 
+PASS ValidityState interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS ValidityState interface: attribute valueMissing 
+PASS ValidityState interface: attribute typeMismatch 
+PASS ValidityState interface: attribute patternMismatch 
+PASS ValidityState interface: attribute tooLong 
+FAIL ValidityState interface: attribute tooShort assert_true: The prototype object must have a property &quot;tooShort&quot; expected true got false
+PASS ValidityState interface: attribute rangeUnderflow 
+PASS ValidityState interface: attribute rangeOverflow 
+PASS ValidityState interface: attribute stepMismatch 
+PASS ValidityState interface: attribute badInput 
+PASS ValidityState interface: attribute customError 
+PASS ValidityState interface: attribute valid 
+PASS ValidityState must be primary interface of document.createElement(&quot;input&quot;).validity 
+PASS Stringification of document.createElement(&quot;input&quot;).validity 
+PASS ValidityState interface: document.createElement(&quot;input&quot;).validity must inherit property &quot;valueMissing&quot; with the proper type (0) 
+PASS ValidityState interface: document.createElement(&quot;input&quot;).validity must inherit property &quot;typeMismatch&quot; with the proper type (1) 
+PASS ValidityState interface: document.createElement(&quot;input&quot;).validity must inherit property &quot;patternMismatch&quot; with the proper type (2) 
+PASS ValidityState interface: document.createElement(&quot;input&quot;).validity must inherit property &quot;tooLong&quot; with the proper type (3) 
+FAIL ValidityState interface: document.createElement(&quot;input&quot;).validity must inherit property &quot;tooShort&quot; with the proper type (4) assert_inherits: property &quot;tooShort&quot; not found in prototype chain
+PASS ValidityState interface: document.createElement(&quot;input&quot;).validity must inherit property &quot;rangeUnderflow&quot; with the proper type (5) 
+PASS ValidityState interface: document.createElement(&quot;input&quot;).validity must inherit property &quot;rangeOverflow&quot; with the proper type (6) 
+PASS ValidityState interface: document.createElement(&quot;input&quot;).validity must inherit property &quot;stepMismatch&quot; with the proper type (7) 
+PASS ValidityState interface: document.createElement(&quot;input&quot;).validity must inherit property &quot;badInput&quot; with the proper type (8) 
+PASS ValidityState interface: document.createElement(&quot;input&quot;).validity must inherit property &quot;customError&quot; with the proper type (9) 
+PASS ValidityState interface: document.createElement(&quot;input&quot;).validity must inherit property &quot;valid&quot; with the proper type (10) 
+PASS HTMLDetailsElement interface: existence and properties of interface object 
+PASS HTMLDetailsElement interface object length 
+PASS HTMLDetailsElement interface object name 
+PASS HTMLDetailsElement interface: existence and properties of interface prototype object 
+PASS HTMLDetailsElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLDetailsElement interface: attribute open 
+PASS HTMLDetailsElement must be primary interface of document.createElement(&quot;details&quot;) 
+PASS Stringification of document.createElement(&quot;details&quot;) 
+PASS HTMLDetailsElement interface: document.createElement(&quot;details&quot;) must inherit property &quot;open&quot; with the proper type (0) 
+PASS HTMLMenuElement interface: existence and properties of interface object 
+PASS HTMLMenuElement interface object length 
+PASS HTMLMenuElement interface object name 
+PASS HTMLMenuElement interface: existence and properties of interface prototype object 
+PASS HTMLMenuElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+FAIL HTMLMenuElement interface: attribute type assert_true: The prototype object must have a property &quot;type&quot; expected true got false
+FAIL HTMLMenuElement interface: attribute label assert_true: The prototype object must have a property &quot;label&quot; expected true got false
+PASS HTMLMenuElement interface: attribute compact 
+PASS HTMLMenuElement must be primary interface of document.createElement(&quot;menu&quot;) 
+PASS Stringification of document.createElement(&quot;menu&quot;) 
+FAIL HTMLMenuElement interface: document.createElement(&quot;menu&quot;) must inherit property &quot;type&quot; with the proper type (0) assert_inherits: property &quot;type&quot; not found in prototype chain
+FAIL HTMLMenuElement interface: document.createElement(&quot;menu&quot;) must inherit property &quot;label&quot; with the proper type (1) assert_inherits: property &quot;label&quot; not found in prototype chain
+PASS HTMLMenuElement interface: document.createElement(&quot;menu&quot;) must inherit property &quot;compact&quot; with the proper type (2) 
+FAIL HTMLMenuItemElement interface: existence and properties of interface object assert_own_property: self does not have own property &quot;HTMLMenuItemElement&quot; expected property &quot;HTMLMenuItemElement&quot; missing
+FAIL HTMLMenuItemElement interface object length assert_own_property: self does not have own property &quot;HTMLMenuItemElement&quot; expected property &quot;HTMLMenuItemElement&quot; missing
+FAIL HTMLMenuItemElement interface object name assert_own_property: self does not have own property &quot;HTMLMenuItemElement&quot; expected property &quot;HTMLMenuItemElement&quot; missing
+FAIL HTMLMenuItemElement interface: existence and properties of interface prototype object assert_own_property: self does not have own property &quot;HTMLMenuItemElement&quot; expected property &quot;HTMLMenuItemElement&quot; missing
+FAIL HTMLMenuItemElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property assert_own_property: self does not have own property &quot;HTMLMenuItemElement&quot; expected property &quot;HTMLMenuItemElement&quot; missing
+FAIL HTMLMenuItemElement interface: attribute type assert_own_property: self does not have own property &quot;HTMLMenuItemElement&quot; expected property &quot;HTMLMenuItemElement&quot; missing
+FAIL HTMLMenuItemElement interface: attribute label assert_own_property: self does not have own property &quot;HTMLMenuItemElement&quot; expected property &quot;HTMLMenuItemElement&quot; missing
+FAIL HTMLMenuItemElement interface: attribute icon assert_own_property: self does not have own property &quot;HTMLMenuItemElement&quot; expected property &quot;HTMLMenuItemElement&quot; missing
+FAIL HTMLMenuItemElement interface: attribute disabled assert_own_property: self does not have own property &quot;HTMLMenuItemElement&quot; expected property &quot;HTMLMenuItemElement&quot; missing
+FAIL HTMLMenuItemElement interface: attribute checked assert_own_property: self does not have own property &quot;HTMLMenuItemElement&quot; expected property &quot;HTMLMenuItemElement&quot; missing
+FAIL HTMLMenuItemElement interface: attribute radiogroup assert_own_property: self does not have own property &quot;HTMLMenuItemElement&quot; expected property &quot;HTMLMenuItemElement&quot; missing
+FAIL HTMLMenuItemElement interface: attribute default assert_own_property: self does not have own property &quot;HTMLMenuItemElement&quot; expected property &quot;HTMLMenuItemElement&quot; missing
+FAIL HTMLMenuItemElement interface: attribute command assert_own_property: self does not have own property &quot;HTMLMenuItemElement&quot; expected property &quot;HTMLMenuItemElement&quot; missing
+FAIL RelatedEvent interface: existence and properties of interface object assert_own_property: self does not have own property &quot;RelatedEvent&quot; expected property &quot;RelatedEvent&quot; missing
+FAIL RelatedEvent interface object length assert_own_property: self does not have own property &quot;RelatedEvent&quot; expected property &quot;RelatedEvent&quot; missing
+FAIL RelatedEvent interface object name assert_own_property: self does not have own property &quot;RelatedEvent&quot; expected property &quot;RelatedEvent&quot; missing
+FAIL RelatedEvent interface: existence and properties of interface prototype object assert_own_property: self does not have own property &quot;RelatedEvent&quot; expected property &quot;RelatedEvent&quot; missing
+FAIL RelatedEvent interface: existence and properties of interface prototype object's &quot;constructor&quot; property assert_own_property: self does not have own property &quot;RelatedEvent&quot; expected property &quot;RelatedEvent&quot; missing
+FAIL RelatedEvent interface: attribute relatedTarget assert_own_property: self does not have own property &quot;RelatedEvent&quot; expected property &quot;RelatedEvent&quot; missing
+FAIL HTMLDialogElement interface: existence and properties of interface object assert_own_property: self does not have own property &quot;HTMLDialogElement&quot; expected property &quot;HTMLDialogElement&quot; missing
+FAIL HTMLDialogElement interface object length assert_own_property: self does not have own property &quot;HTMLDialogElement&quot; expected property &quot;HTMLDialogElement&quot; missing
+FAIL HTMLDialogElement interface object name assert_own_property: self does not have own property &quot;HTMLDialogElement&quot; expected property &quot;HTMLDialogElement&quot; missing
+FAIL HTMLDialogElement interface: existence and properties of interface prototype object assert_own_property: self does not have own property &quot;HTMLDialogElement&quot; expected property &quot;HTMLDialogElement&quot; missing
+FAIL HTMLDialogElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property assert_own_property: self does not have own property &quot;HTMLDialogElement&quot; expected property &quot;HTMLDialogElement&quot; missing
+FAIL HTMLDialogElement interface: attribute open assert_own_property: self does not have own property &quot;HTMLDialogElement&quot; expected property &quot;HTMLDialogElement&quot; missing
+FAIL HTMLDialogElement interface: attribute returnValue assert_own_property: self does not have own property &quot;HTMLDialogElement&quot; expected property &quot;HTMLDialogElement&quot; missing
+FAIL HTMLDialogElement interface: operation show([object Object],[object Object]) assert_own_property: self does not have own property &quot;HTMLDialogElement&quot; expected property &quot;HTMLDialogElement&quot; missing
+FAIL HTMLDialogElement interface: operation showModal([object Object],[object Object]) assert_own_property: self does not have own property &quot;HTMLDialogElement&quot; expected property &quot;HTMLDialogElement&quot; missing
+FAIL HTMLDialogElement interface: operation close(DOMString) assert_own_property: self does not have own property &quot;HTMLDialogElement&quot; expected property &quot;HTMLDialogElement&quot; missing
+PASS HTMLScriptElement interface: existence and properties of interface object 
+PASS HTMLScriptElement interface object length 
+PASS HTMLScriptElement interface object name 
+PASS HTMLScriptElement interface: existence and properties of interface prototype object 
+PASS HTMLScriptElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLScriptElement interface: attribute src 
+PASS HTMLScriptElement interface: attribute type 
+PASS HTMLScriptElement interface: attribute charset 
+PASS HTMLScriptElement interface: attribute async 
+PASS HTMLScriptElement interface: attribute defer 
+PASS HTMLScriptElement interface: attribute crossOrigin 
+PASS HTMLScriptElement interface: attribute text 
+PASS HTMLScriptElement interface: attribute event 
+PASS HTMLScriptElement interface: attribute htmlFor 
+PASS HTMLScriptElement must be primary interface of document.createElement(&quot;script&quot;) 
+PASS Stringification of document.createElement(&quot;script&quot;) 
+PASS HTMLScriptElement interface: document.createElement(&quot;script&quot;) must inherit property &quot;src&quot; with the proper type (0) 
+PASS HTMLScriptElement interface: document.createElement(&quot;script&quot;) must inherit property &quot;type&quot; with the proper type (1) 
+PASS HTMLScriptElement interface: document.createElement(&quot;script&quot;) must inherit property &quot;charset&quot; with the proper type (2) 
+PASS HTMLScriptElement interface: document.createElement(&quot;script&quot;) must inherit property &quot;async&quot; with the proper type (3) 
+PASS HTMLScriptElement interface: document.createElement(&quot;script&quot;) must inherit property &quot;defer&quot; with the proper type (4) 
+PASS HTMLScriptElement interface: document.createElement(&quot;script&quot;) must inherit property &quot;crossOrigin&quot; with the proper type (5) 
+PASS HTMLScriptElement interface: document.createElement(&quot;script&quot;) must inherit property &quot;text&quot; with the proper type (6) 
+PASS HTMLScriptElement interface: document.createElement(&quot;script&quot;) must inherit property &quot;event&quot; with the proper type (7) 
+PASS HTMLScriptElement interface: document.createElement(&quot;script&quot;) must inherit property &quot;htmlFor&quot; with the proper type (8) 
+PASS HTMLTemplateElement interface: existence and properties of interface object 
+PASS HTMLTemplateElement interface object length 
+PASS HTMLTemplateElement interface object name 
+PASS HTMLTemplateElement interface: existence and properties of interface prototype object 
+PASS HTMLTemplateElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLTemplateElement interface: attribute content 
+PASS HTMLTemplateElement must be primary interface of document.createElement(&quot;template&quot;) 
+PASS Stringification of document.createElement(&quot;template&quot;) 
+PASS HTMLTemplateElement interface: document.createElement(&quot;template&quot;) must inherit property &quot;content&quot; with the proper type (0) 
+PASS HTMLSlotElement interface: existence and properties of interface object 
+PASS HTMLSlotElement interface object length 
+PASS HTMLSlotElement interface object name 
+PASS HTMLSlotElement interface: existence and properties of interface prototype object 
+PASS HTMLSlotElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLSlotElement interface: attribute name 
+PASS HTMLSlotElement interface: operation assignedNodes(AssignedNodesOptions) 
+PASS HTMLSlotElement must be primary interface of document.createElement(&quot;slot&quot;) 
+PASS Stringification of document.createElement(&quot;slot&quot;) 
+PASS HTMLSlotElement interface: document.createElement(&quot;slot&quot;) must inherit property &quot;name&quot; with the proper type (0) 
+PASS HTMLSlotElement interface: document.createElement(&quot;slot&quot;) must inherit property &quot;assignedNodes&quot; with the proper type (1) 
+PASS HTMLSlotElement interface: calling assignedNodes(AssignedNodesOptions) on document.createElement(&quot;slot&quot;) with too few arguments must throw TypeError 
+PASS HTMLCanvasElement interface: existence and properties of interface object 
+PASS HTMLCanvasElement interface object length 
+PASS HTMLCanvasElement interface object name 
+PASS HTMLCanvasElement interface: existence and properties of interface prototype object 
+PASS HTMLCanvasElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLCanvasElement interface: attribute width 
+PASS HTMLCanvasElement interface: attribute height 
+FAIL HTMLCanvasElement interface: operation getContext(DOMString,any) assert_equals: property has wrong .length expected 1 but got 0
+FAIL HTMLCanvasElement interface: operation probablySupportsContext(DOMString,any) assert_equals: property has wrong .length expected 1 but got 0
+FAIL HTMLCanvasElement interface: operation setContext(RenderingContext) assert_own_property: interface prototype object missing non-static operation expected property &quot;setContext&quot; missing
+FAIL HTMLCanvasElement interface: operation transferControlToProxy() assert_own_property: interface prototype object missing non-static operation expected property &quot;transferControlToProxy&quot; missing
+PASS HTMLCanvasElement interface: operation toDataURL(DOMString,any) 
+FAIL HTMLCanvasElement interface: operation toBlob(FileCallback,DOMString,any) assert_own_property: interface prototype object missing non-static operation expected property &quot;toBlob&quot; missing
+PASS HTMLCanvasElement must be primary interface of document.createElement(&quot;canvas&quot;) 
+PASS Stringification of document.createElement(&quot;canvas&quot;) 
+PASS HTMLCanvasElement interface: document.createElement(&quot;canvas&quot;) must inherit property &quot;width&quot; with the proper type (0) 
+PASS HTMLCanvasElement interface: document.createElement(&quot;canvas&quot;) must inherit property &quot;height&quot; with the proper type (1) 
+PASS HTMLCanvasElement interface: document.createElement(&quot;canvas&quot;) must inherit property &quot;getContext&quot; with the proper type (2) 
+FAIL HTMLCanvasElement interface: calling getContext(DOMString,any) on document.createElement(&quot;canvas&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS HTMLCanvasElement interface: document.createElement(&quot;canvas&quot;) must inherit property &quot;probablySupportsContext&quot; with the proper type (3) 
+FAIL HTMLCanvasElement interface: calling probablySupportsContext(DOMString,any) on document.createElement(&quot;canvas&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+FAIL HTMLCanvasElement interface: document.createElement(&quot;canvas&quot;) must inherit property &quot;setContext&quot; with the proper type (4) assert_inherits: property &quot;setContext&quot; not found in prototype chain
+FAIL HTMLCanvasElement interface: calling setContext(RenderingContext) on document.createElement(&quot;canvas&quot;) with too few arguments must throw TypeError assert_inherits: property &quot;setContext&quot; not found in prototype chain
+FAIL HTMLCanvasElement interface: document.createElement(&quot;canvas&quot;) must inherit property &quot;transferControlToProxy&quot; with the proper type (5) assert_inherits: property &quot;transferControlToProxy&quot; not found in prototype chain
+PASS HTMLCanvasElement interface: document.createElement(&quot;canvas&quot;) must inherit property &quot;toDataURL&quot; with the proper type (6) 
+PASS HTMLCanvasElement interface: calling toDataURL(DOMString,any) on document.createElement(&quot;canvas&quot;) with too few arguments must throw TypeError 
+FAIL HTMLCanvasElement interface: document.createElement(&quot;canvas&quot;) must inherit property &quot;toBlob&quot; with the proper type (7) assert_inherits: property &quot;toBlob&quot; not found in prototype chain
+FAIL HTMLCanvasElement interface: calling toBlob(FileCallback,DOMString,any) on document.createElement(&quot;canvas&quot;) with too few arguments must throw TypeError assert_inherits: property &quot;toBlob&quot; not found in prototype chain
+FAIL CanvasProxy interface: existence and properties of interface object assert_own_property: self does not have own property &quot;CanvasProxy&quot; expected property &quot;CanvasProxy&quot; missing
+FAIL CanvasProxy interface object length assert_own_property: self does not have own property &quot;CanvasProxy&quot; expected property &quot;CanvasProxy&quot; missing
+FAIL CanvasProxy interface object name assert_own_property: self does not have own property &quot;CanvasProxy&quot; expected property &quot;CanvasProxy&quot; missing
+FAIL CanvasProxy interface: existence and properties of interface prototype object assert_own_property: self does not have own property &quot;CanvasProxy&quot; expected property &quot;CanvasProxy&quot; missing
+FAIL CanvasProxy interface: existence and properties of interface prototype object's &quot;constructor&quot; property assert_own_property: self does not have own property &quot;CanvasProxy&quot; expected property &quot;CanvasProxy&quot; missing
+FAIL CanvasProxy interface: operation setContext(RenderingContext) assert_own_property: self does not have own property &quot;CanvasProxy&quot; expected property &quot;CanvasProxy&quot; missing
+PASS CanvasRenderingContext2D interface: existence and properties of interface object 
+FAIL CanvasRenderingContext2D interface object length assert_equals: wrong value for CanvasRenderingContext2D.length expected 1 but got 0
+PASS CanvasRenderingContext2D interface object name 
+FAIL CanvasRenderingContext2D interface: existence and properties of interface prototype object assert_equals: prototype of CanvasRenderingContext2D.prototype is not Object.prototype expected object &quot;[object Object]&quot; but got object &quot;[object CanvasRenderingContextPrototype]&quot;
+PASS CanvasRenderingContext2D interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+FAIL CanvasRenderingContext2D interface: attribute canvas assert_own_property: expected property &quot;canvas&quot; missing
+FAIL CanvasRenderingContext2D interface: attribute width assert_true: The prototype object must have a property &quot;width&quot; expected true got false
+FAIL CanvasRenderingContext2D interface: attribute height assert_true: The prototype object must have a property &quot;height&quot; expected true got false
+PASS CanvasRenderingContext2D interface: operation commit() 
+PASS CanvasRenderingContext2D interface: operation save() 
+PASS CanvasRenderingContext2D interface: operation restore() 
+FAIL CanvasRenderingContext2D interface: attribute currentTransform assert_true: The prototype object must have a property &quot;currentTransform&quot; expected true got false
+PASS CanvasRenderingContext2D interface: operation scale(unrestricted double,unrestricted double) 
+PASS CanvasRenderingContext2D interface: operation rotate(unrestricted double) 
+PASS CanvasRenderingContext2D interface: operation translate(unrestricted double,unrestricted double) 
+PASS CanvasRenderingContext2D interface: operation transform(unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double) 
+PASS CanvasRenderingContext2D interface: operation setTransform(unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double) 
+FAIL CanvasRenderingContext2D interface: operation resetTransform() assert_own_property: interface prototype object missing non-static operation expected property &quot;resetTransform&quot; missing
+PASS CanvasRenderingContext2D interface: attribute globalAlpha 
+PASS CanvasRenderingContext2D interface: attribute globalCompositeOperation 
+PASS CanvasRenderingContext2D interface: attribute imageSmoothingEnabled 
+PASS CanvasRenderingContext2D interface: attribute strokeStyle 
+PASS CanvasRenderingContext2D interface: attribute fillStyle 
+PASS CanvasRenderingContext2D interface: operation createLinearGradient(double,double,double,double) 
+PASS CanvasRenderingContext2D interface: operation createRadialGradient(double,double,double,double,double,double) 
+PASS CanvasRenderingContext2D interface: operation createPattern(CanvasImageSource,DOMString) 
+PASS CanvasRenderingContext2D interface: attribute shadowOffsetX 
+PASS CanvasRenderingContext2D interface: attribute shadowOffsetY 
+PASS CanvasRenderingContext2D interface: attribute shadowBlur 
+PASS CanvasRenderingContext2D interface: attribute shadowColor 
+PASS CanvasRenderingContext2D interface: operation clearRect(unrestricted double,unrestricted double,unrestricted double,unrestricted double) 
+PASS CanvasRenderingContext2D interface: operation fillRect(unrestricted double,unrestricted double,unrestricted double,unrestricted double) 
+PASS CanvasRenderingContext2D interface: operation strokeRect(unrestricted double,unrestricted double,unrestricted double,unrestricted double) 
+PASS CanvasRenderingContext2D interface: operation beginPath() 
+FAIL CanvasRenderingContext2D interface: operation fill(CanvasFillRule) assert_equals: property has wrong .length expected 0 but got 1
+FAIL CanvasRenderingContext2D interface: operation fill(Path2D,CanvasFillRule) assert_equals: property has wrong .length expected 0 but got 1
+FAIL CanvasRenderingContext2D interface: operation stroke() assert_equals: property has wrong .length expected 0 but got 1
+FAIL CanvasRenderingContext2D interface: operation stroke(Path2D) assert_equals: property has wrong .length expected 0 but got 1
+FAIL CanvasRenderingContext2D interface: operation drawSystemFocusRing(Element) assert_own_property: interface prototype object missing non-static operation expected property &quot;drawSystemFocusRing&quot; missing
+FAIL CanvasRenderingContext2D interface: operation drawSystemFocusRing(Path2D,Element) assert_own_property: interface prototype object missing non-static operation expected property &quot;drawSystemFocusRing&quot; missing
+FAIL CanvasRenderingContext2D interface: operation drawCustomFocusRing(Element) assert_own_property: interface prototype object missing non-static operation expected property &quot;drawCustomFocusRing&quot; missing
+FAIL CanvasRenderingContext2D interface: operation drawCustomFocusRing(Path2D,Element) assert_own_property: interface prototype object missing non-static operation expected property &quot;drawCustomFocusRing&quot; missing
+FAIL CanvasRenderingContext2D interface: operation scrollPathIntoView() assert_own_property: interface prototype object missing non-static operation expected property &quot;scrollPathIntoView&quot; missing
+FAIL CanvasRenderingContext2D interface: operation scrollPathIntoView(Path2D) assert_own_property: interface prototype object missing non-static operation expected property &quot;scrollPathIntoView&quot; missing
+FAIL CanvasRenderingContext2D interface: operation clip(CanvasFillRule) assert_equals: property has wrong .length expected 0 but got 1
+FAIL CanvasRenderingContext2D interface: operation clip(Path2D,CanvasFillRule) assert_equals: property has wrong .length expected 0 but got 1
+FAIL CanvasRenderingContext2D interface: operation resetClip() assert_own_property: interface prototype object missing non-static operation expected property &quot;resetClip&quot; missing
+FAIL CanvasRenderingContext2D interface: operation isPointInPath(unrestricted double,unrestricted double,CanvasFillRule) assert_equals: property has wrong .length expected 2 but got 3
+FAIL CanvasRenderingContext2D interface: operation isPointInPath(Path2D,unrestricted double,unrestricted double,CanvasFillRule) assert_equals: property has wrong .length expected 2 but got 3
+FAIL CanvasRenderingContext2D interface: operation isPointInStroke(unrestricted double,unrestricted double) assert_equals: property has wrong .length expected 2 but got 3
+FAIL CanvasRenderingContext2D interface: operation isPointInStroke(Path2D,unrestricted double,unrestricted double) assert_equals: property has wrong .length expected 2 but got 3
+PASS CanvasRenderingContext2D interface: operation fillText(DOMString,unrestricted double,unrestricted double,unrestricted double) 
+PASS CanvasRenderingContext2D interface: operation strokeText(DOMString,unrestricted double,unrestricted double,unrestricted double) 
+PASS CanvasRenderingContext2D interface: operation measureText(DOMString) 
+PASS CanvasRenderingContext2D interface: operation drawImage(CanvasImageSource,unrestricted double,unrestricted double) 
+PASS CanvasRenderingContext2D interface: operation drawImage(CanvasImageSource,unrestricted double,unrestricted double,unrestricted double,unrestricted double) 
+PASS CanvasRenderingContext2D interface: operation drawImage(CanvasImageSource,unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double) 
+FAIL CanvasRenderingContext2D interface: operation addHitRegion(HitRegionOptions) assert_own_property: interface prototype object missing non-static operation expected property &quot;addHitRegion&quot; missing
+FAIL CanvasRenderingContext2D interface: operation removeHitRegion(DOMString) assert_own_property: interface prototype object missing non-static operation expected property &quot;removeHitRegion&quot; missing
+PASS CanvasRenderingContext2D interface: operation createImageData(double,double) 
+PASS CanvasRenderingContext2D interface: operation createImageData(ImageData) 
+PASS CanvasRenderingContext2D interface: operation getImageData(double,double,double,double) 
+PASS CanvasRenderingContext2D interface: operation putImageData(ImageData,double,double) 
+PASS CanvasRenderingContext2D interface: operation putImageData(ImageData,double,double,double,double,double,double) 
+PASS CanvasRenderingContext2D interface: attribute lineWidth 
+PASS CanvasRenderingContext2D interface: attribute lineCap 
+PASS CanvasRenderingContext2D interface: attribute lineJoin 
+PASS CanvasRenderingContext2D interface: attribute miterLimit 
+PASS CanvasRenderingContext2D interface: operation setLineDash([object Object]) 
+PASS CanvasRenderingContext2D interface: operation getLineDash() 
+PASS CanvasRenderingContext2D interface: attribute lineDashOffset 
+PASS CanvasRenderingContext2D interface: attribute font 
+PASS CanvasRenderingContext2D interface: attribute textAlign 
+PASS CanvasRenderingContext2D interface: attribute textBaseline 
+PASS CanvasRenderingContext2D interface: attribute direction 
+PASS CanvasRenderingContext2D interface: operation closePath() 
+PASS CanvasRenderingContext2D interface: operation moveTo(unrestricted double,unrestricted double) 
+PASS CanvasRenderingContext2D interface: operation lineTo(unrestricted double,unrestricted double) 
+PASS CanvasRenderingContext2D interface: operation quadraticCurveTo(unrestricted double,unrestricted double,unrestricted double,unrestricted double) 
+PASS CanvasRenderingContext2D interface: operation bezierCurveTo(unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double) 
+PASS CanvasRenderingContext2D interface: operation arcTo(unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double) 
+PASS CanvasRenderingContext2D interface: operation arcTo(unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double) 
+PASS CanvasRenderingContext2D interface: operation rect(unrestricted double,unrestricted double,unrestricted double,unrestricted double) 
+PASS CanvasRenderingContext2D interface: operation arc(unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,boolean) 
+PASS CanvasRenderingContext2D interface: operation ellipse(unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,boolean) 
+PASS CanvasRenderingContext2D must be primary interface of document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) 
+PASS Stringification of document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;canvas&quot; with the proper type (0) 
+FAIL CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;width&quot; with the proper type (1) assert_inherits: property &quot;width&quot; not found in prototype chain
+FAIL CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;height&quot; with the proper type (2) assert_inherits: property &quot;height&quot; not found in prototype chain
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;commit&quot; with the proper type (3) 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;save&quot; with the proper type (4) 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;restore&quot; with the proper type (5) 
+FAIL CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;currentTransform&quot; with the proper type (6) assert_inherits: property &quot;currentTransform&quot; not found in prototype chain
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;scale&quot; with the proper type (7) 
+PASS CanvasRenderingContext2D interface: calling scale(unrestricted double,unrestricted double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;rotate&quot; with the proper type (8) 
+PASS CanvasRenderingContext2D interface: calling rotate(unrestricted double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;translate&quot; with the proper type (9) 
+PASS CanvasRenderingContext2D interface: calling translate(unrestricted double,unrestricted double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;transform&quot; with the proper type (10) 
+PASS CanvasRenderingContext2D interface: calling transform(unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;setTransform&quot; with the proper type (11) 
+PASS CanvasRenderingContext2D interface: calling setTransform(unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+FAIL CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;resetTransform&quot; with the proper type (12) assert_inherits: property &quot;resetTransform&quot; not found in prototype chain
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;globalAlpha&quot; with the proper type (13) 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;globalCompositeOperation&quot; with the proper type (14) 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;imageSmoothingEnabled&quot; with the proper type (15) 
+FAIL CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;strokeStyle&quot; with the proper type (16) Unrecognized type [object Object],[object Object],[object Object]
+FAIL CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;fillStyle&quot; with the proper type (17) Unrecognized type [object Object],[object Object],[object Object]
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;createLinearGradient&quot; with the proper type (18) 
+PASS CanvasRenderingContext2D interface: calling createLinearGradient(double,double,double,double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;createRadialGradient&quot; with the proper type (19) 
+PASS CanvasRenderingContext2D interface: calling createRadialGradient(double,double,double,double,double,double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;createPattern&quot; with the proper type (20) 
+PASS CanvasRenderingContext2D interface: calling createPattern(CanvasImageSource,DOMString) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;shadowOffsetX&quot; with the proper type (21) 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;shadowOffsetY&quot; with the proper type (22) 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;shadowBlur&quot; with the proper type (23) 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;shadowColor&quot; with the proper type (24) 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;clearRect&quot; with the proper type (25) 
+PASS CanvasRenderingContext2D interface: calling clearRect(unrestricted double,unrestricted double,unrestricted double,unrestricted double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;fillRect&quot; with the proper type (26) 
+PASS CanvasRenderingContext2D interface: calling fillRect(unrestricted double,unrestricted double,unrestricted double,unrestricted double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;strokeRect&quot; with the proper type (27) 
+PASS CanvasRenderingContext2D interface: calling strokeRect(unrestricted double,unrestricted double,unrestricted double,unrestricted double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;beginPath&quot; with the proper type (28) 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;fill&quot; with the proper type (29) 
+PASS CanvasRenderingContext2D interface: calling fill(CanvasFillRule) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;fill&quot; with the proper type (30) 
+PASS CanvasRenderingContext2D interface: calling fill(Path2D,CanvasFillRule) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;stroke&quot; with the proper type (31) 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;stroke&quot; with the proper type (32) 
+PASS CanvasRenderingContext2D interface: calling stroke(Path2D) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+FAIL CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;drawSystemFocusRing&quot; with the proper type (33) assert_inherits: property &quot;drawSystemFocusRing&quot; not found in prototype chain
+FAIL CanvasRenderingContext2D interface: calling drawSystemFocusRing(Element) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError assert_inherits: property &quot;drawSystemFocusRing&quot; not found in prototype chain
+FAIL CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;drawSystemFocusRing&quot; with the proper type (34) assert_inherits: property &quot;drawSystemFocusRing&quot; not found in prototype chain
+FAIL CanvasRenderingContext2D interface: calling drawSystemFocusRing(Path2D,Element) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError assert_inherits: property &quot;drawSystemFocusRing&quot; not found in prototype chain
+FAIL CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;drawCustomFocusRing&quot; with the proper type (35) assert_inherits: property &quot;drawCustomFocusRing&quot; not found in prototype chain
+FAIL CanvasRenderingContext2D interface: calling drawCustomFocusRing(Element) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError assert_inherits: property &quot;drawCustomFocusRing&quot; not found in prototype chain
+FAIL CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;drawCustomFocusRing&quot; with the proper type (36) assert_inherits: property &quot;drawCustomFocusRing&quot; not found in prototype chain
+FAIL CanvasRenderingContext2D interface: calling drawCustomFocusRing(Path2D,Element) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError assert_inherits: property &quot;drawCustomFocusRing&quot; not found in prototype chain
+FAIL CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;scrollPathIntoView&quot; with the proper type (37) assert_inherits: property &quot;scrollPathIntoView&quot; not found in prototype chain
+FAIL CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;scrollPathIntoView&quot; with the proper type (38) assert_inherits: property &quot;scrollPathIntoView&quot; not found in prototype chain
+FAIL CanvasRenderingContext2D interface: calling scrollPathIntoView(Path2D) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError assert_inherits: property &quot;scrollPathIntoView&quot; not found in prototype chain
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;clip&quot; with the proper type (39) 
+PASS CanvasRenderingContext2D interface: calling clip(CanvasFillRule) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;clip&quot; with the proper type (40) 
+PASS CanvasRenderingContext2D interface: calling clip(Path2D,CanvasFillRule) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+FAIL CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;resetClip&quot; with the proper type (41) assert_inherits: property &quot;resetClip&quot; not found in prototype chain
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;isPointInPath&quot; with the proper type (42) 
+PASS CanvasRenderingContext2D interface: calling isPointInPath(unrestricted double,unrestricted double,CanvasFillRule) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;isPointInPath&quot; with the proper type (43) 
+PASS CanvasRenderingContext2D interface: calling isPointInPath(Path2D,unrestricted double,unrestricted double,CanvasFillRule) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;isPointInStroke&quot; with the proper type (44) 
+PASS CanvasRenderingContext2D interface: calling isPointInStroke(unrestricted double,unrestricted double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;isPointInStroke&quot; with the proper type (45) 
+PASS CanvasRenderingContext2D interface: calling isPointInStroke(Path2D,unrestricted double,unrestricted double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;fillText&quot; with the proper type (46) 
+PASS CanvasRenderingContext2D interface: calling fillText(DOMString,unrestricted double,unrestricted double,unrestricted double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;strokeText&quot; with the proper type (47) 
+PASS CanvasRenderingContext2D interface: calling strokeText(DOMString,unrestricted double,unrestricted double,unrestricted double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;measureText&quot; with the proper type (48) 
+PASS CanvasRenderingContext2D interface: calling measureText(DOMString) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;drawImage&quot; with the proper type (49) 
+PASS CanvasRenderingContext2D interface: calling drawImage(CanvasImageSource,unrestricted double,unrestricted double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;drawImage&quot; with the proper type (50) 
+PASS CanvasRenderingContext2D interface: calling drawImage(CanvasImageSource,unrestricted double,unrestricted double,unrestricted double,unrestricted double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;drawImage&quot; with the proper type (51) 
+PASS CanvasRenderingContext2D interface: calling drawImage(CanvasImageSource,unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+FAIL CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;addHitRegion&quot; with the proper type (52) assert_inherits: property &quot;addHitRegion&quot; not found in prototype chain
+FAIL CanvasRenderingContext2D interface: calling addHitRegion(HitRegionOptions) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError assert_inherits: property &quot;addHitRegion&quot; not found in prototype chain
+FAIL CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;removeHitRegion&quot; with the proper type (53) assert_inherits: property &quot;removeHitRegion&quot; not found in prototype chain
+FAIL CanvasRenderingContext2D interface: calling removeHitRegion(DOMString) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError assert_inherits: property &quot;removeHitRegion&quot; not found in prototype chain
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;createImageData&quot; with the proper type (54) 
+PASS CanvasRenderingContext2D interface: calling createImageData(double,double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;createImageData&quot; with the proper type (55) 
+PASS CanvasRenderingContext2D interface: calling createImageData(ImageData) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;getImageData&quot; with the proper type (56) 
+PASS CanvasRenderingContext2D interface: calling getImageData(double,double,double,double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;putImageData&quot; with the proper type (57) 
+PASS CanvasRenderingContext2D interface: calling putImageData(ImageData,double,double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;putImageData&quot; with the proper type (58) 
+PASS CanvasRenderingContext2D interface: calling putImageData(ImageData,double,double,double,double,double,double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;lineWidth&quot; with the proper type (59) 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;lineCap&quot; with the proper type (60) 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;lineJoin&quot; with the proper type (61) 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;miterLimit&quot; with the proper type (62) 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;setLineDash&quot; with the proper type (63) 
+PASS CanvasRenderingContext2D interface: calling setLineDash([object Object]) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;getLineDash&quot; with the proper type (64) 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;lineDashOffset&quot; with the proper type (65) 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;font&quot; with the proper type (66) 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;textAlign&quot; with the proper type (67) 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;textBaseline&quot; with the proper type (68) 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;direction&quot; with the proper type (69) 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;closePath&quot; with the proper type (70) 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;moveTo&quot; with the proper type (71) 
+PASS CanvasRenderingContext2D interface: calling moveTo(unrestricted double,unrestricted double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;lineTo&quot; with the proper type (72) 
+PASS CanvasRenderingContext2D interface: calling lineTo(unrestricted double,unrestricted double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;quadraticCurveTo&quot; with the proper type (73) 
+PASS CanvasRenderingContext2D interface: calling quadraticCurveTo(unrestricted double,unrestricted double,unrestricted double,unrestricted double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;bezierCurveTo&quot; with the proper type (74) 
+PASS CanvasRenderingContext2D interface: calling bezierCurveTo(unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;arcTo&quot; with the proper type (75) 
+PASS CanvasRenderingContext2D interface: calling arcTo(unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;arcTo&quot; with the proper type (76) 
+PASS CanvasRenderingContext2D interface: calling arcTo(unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;rect&quot; with the proper type (77) 
+PASS CanvasRenderingContext2D interface: calling rect(unrestricted double,unrestricted double,unrestricted double,unrestricted double) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;arc&quot; with the proper type (78) 
+PASS CanvasRenderingContext2D interface: calling arc(unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,boolean) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasRenderingContext2D interface: document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) must inherit property &quot;ellipse&quot; with the proper type (79) 
+PASS CanvasRenderingContext2D interface: calling ellipse(unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,boolean) on document.createElement(&quot;canvas&quot;).getContext(&quot;2d&quot;) with too few arguments must throw TypeError 
+PASS CanvasGradient interface: existence and properties of interface object 
+PASS CanvasGradient interface object length 
+PASS CanvasGradient interface object name 
+PASS CanvasGradient interface: existence and properties of interface prototype object 
+PASS CanvasGradient interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+FAIL CanvasGradient interface: operation addColorStop(double,DOMString) assert_equals: property has wrong .length expected 2 but got 0
+PASS CanvasPattern interface: existence and properties of interface object 
+PASS CanvasPattern interface object length 
+PASS CanvasPattern interface object name 
+PASS CanvasPattern interface: existence and properties of interface prototype object 
+PASS CanvasPattern interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+FAIL CanvasPattern interface: operation setTransform(SVGMatrix) assert_own_property: interface prototype object missing non-static operation expected property &quot;setTransform&quot; missing
+PASS TextMetrics interface: existence and properties of interface object 
+PASS TextMetrics interface object length 
+PASS TextMetrics interface object name 
+PASS TextMetrics interface: existence and properties of interface prototype object 
+PASS TextMetrics interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS TextMetrics interface: attribute width 
+FAIL TextMetrics interface: attribute actualBoundingBoxLeft assert_true: The prototype object must have a property &quot;actualBoundingBoxLeft&quot; expected true got false
+FAIL TextMetrics interface: attribute actualBoundingBoxRight assert_true: The prototype object must have a property &quot;actualBoundingBoxRight&quot; expected true got false
+FAIL TextMetrics interface: attribute fontBoundingBoxAscent assert_true: The prototype object must have a property &quot;fontBoundingBoxAscent&quot; expected true got false
+FAIL TextMetrics interface: attribute fontBoundingBoxDescent assert_true: The prototype object must have a property &quot;fontBoundingBoxDescent&quot; expected true got false
+FAIL TextMetrics interface: attribute actualBoundingBoxAscent assert_true: The prototype object must have a property &quot;actualBoundingBoxAscent&quot; expected true got false
+FAIL TextMetrics interface: attribute actualBoundingBoxDescent assert_true: The prototype object must have a property &quot;actualBoundingBoxDescent&quot; expected true got false
+FAIL TextMetrics interface: attribute emHeightAscent assert_true: The prototype object must have a property &quot;emHeightAscent&quot; expected true got false
+FAIL TextMetrics interface: attribute emHeightDescent assert_true: The prototype object must have a property &quot;emHeightDescent&quot; expected true got false
+FAIL TextMetrics interface: attribute hangingBaseline assert_true: The prototype object must have a property &quot;hangingBaseline&quot; expected true got false
+FAIL TextMetrics interface: attribute alphabeticBaseline assert_true: The prototype object must have a property &quot;alphabeticBaseline&quot; expected true got false
+FAIL TextMetrics interface: attribute ideographicBaseline assert_true: The prototype object must have a property &quot;ideographicBaseline&quot; expected true got false
+PASS ImageData interface: existence and properties of interface object 
+PASS ImageData interface object length 
+PASS ImageData interface object name 
+PASS ImageData interface: existence and properties of interface prototype object 
+PASS ImageData interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS ImageData interface: attribute width 
+PASS ImageData interface: attribute height 
+FAIL ImageData interface: attribute data assert_true: The prototype object must have a property &quot;data&quot; expected true got false
+FAIL DrawingStyle interface: existence and properties of interface object assert_own_property: self does not have own property &quot;DrawingStyle&quot; expected property &quot;DrawingStyle&quot; missing
+FAIL DrawingStyle interface object length assert_own_property: self does not have own property &quot;DrawingStyle&quot; expected property &quot;DrawingStyle&quot; missing
+FAIL DrawingStyle interface object name assert_own_property: self does not have own property &quot;DrawingStyle&quot; expected property &quot;DrawingStyle&quot; missing
+FAIL DrawingStyle interface: existence and properties of interface prototype object assert_own_property: self does not have own property &quot;DrawingStyle&quot; expected property &quot;DrawingStyle&quot; missing
+FAIL DrawingStyle interface: existence and properties of interface prototype object's &quot;constructor&quot; property assert_own_property: self does not have own property &quot;DrawingStyle&quot; expected property &quot;DrawingStyle&quot; missing
+FAIL DrawingStyle interface: attribute lineWidth assert_own_property: self does not have own property &quot;DrawingStyle&quot; expected property &quot;DrawingStyle&quot; missing
+FAIL DrawingStyle interface: attribute lineCap assert_own_property: self does not have own property &quot;DrawingStyle&quot; expected property &quot;DrawingStyle&quot; missing
+FAIL DrawingStyle interface: attribute lineJoin assert_own_property: self does not have own property &quot;DrawingStyle&quot; expected property &quot;DrawingStyle&quot; missing
+FAIL DrawingStyle interface: attribute miterLimit assert_own_property: self does not have own property &quot;DrawingStyle&quot; expected property &quot;DrawingStyle&quot; missing
+FAIL DrawingStyle interface: operation setLineDash([object Object]) assert_own_property: self does not have own property &quot;DrawingStyle&quot; expected property &quot;DrawingStyle&quot; missing
+FAIL DrawingStyle interface: operation getLineDash() assert_own_property: self does not have own property &quot;DrawingStyle&quot; expected property &quot;DrawingStyle&quot; missing
+FAIL DrawingStyle interface: attribute lineDashOffset assert_own_property: self does not have own property &quot;DrawingStyle&quot; expected property &quot;DrawingStyle&quot; missing
+FAIL DrawingStyle interface: attribute font assert_own_property: self does not have own property &quot;DrawingStyle&quot; expected property &quot;DrawingStyle&quot; missing
+FAIL DrawingStyle interface: attribute textAlign assert_own_property: self does not have own property &quot;DrawingStyle&quot; expected property &quot;DrawingStyle&quot; missing
+FAIL DrawingStyle interface: attribute textBaseline assert_own_property: self does not have own property &quot;DrawingStyle&quot; expected property &quot;DrawingStyle&quot; missing
+FAIL DrawingStyle interface: attribute direction assert_own_property: self does not have own property &quot;DrawingStyle&quot; expected property &quot;DrawingStyle&quot; missing
+PASS Path2D interface: existence and properties of interface object 
+PASS Path2D interface object length 
+PASS Path2D interface object name 
+PASS Path2D interface: existence and properties of interface prototype object 
+PASS Path2D interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS Path2D interface: operation addPath(Path2D,SVGMatrix) 
+FAIL Path2D interface: operation addPathByStrokingPath(Path2D,CanvasDrawingStyles,SVGMatrix) assert_own_property: interface prototype object missing non-static operation expected property &quot;addPathByStrokingPath&quot; missing
+FAIL Path2D interface: operation addText(DOMString,CanvasDrawingStyles,SVGMatrix,unrestricted double,unrestricted double,unrestricted double) assert_own_property: interface prototype object missing non-static operation expected property &quot;addText&quot; missing
+FAIL Path2D interface: operation addPathByStrokingText(DOMString,CanvasDrawingStyles,SVGMatrix,unrestricted double,unrestricted double,unrestricted double) assert_own_property: interface prototype object missing non-static operation expected property &quot;addPathByStrokingText&quot; missing
+FAIL Path2D interface: operation addText(DOMString,CanvasDrawingStyles,SVGMatrix,Path2D,unrestricted double) assert_own_property: interface prototype object missing non-static operation expected property &quot;addText&quot; missing
+FAIL Path2D interface: operation addPathByStrokingText(DOMString,CanvasDrawingStyles,SVGMatrix,Path2D,unrestricted double) assert_own_property: interface prototype object missing non-static operation expected property &quot;addPathByStrokingText&quot; missing
+PASS Path2D interface: operation closePath() 
+FAIL Path2D interface: operation moveTo(unrestricted double,unrestricted double) assert_equals: property has wrong .length expected 2 but got 0
+FAIL Path2D interface: operation lineTo(unrestricted double,unrestricted double) assert_equals: property has wrong .length expected 2 but got 0
+FAIL Path2D interface: operation quadraticCurveTo(unrestricted double,unrestricted double,unrestricted double,unrestricted double) assert_equals: property has wrong .length expected 4 but got 0
+FAIL Path2D interface: operation bezierCurveTo(unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double) assert_equals: property has wrong .length expected 6 but got 0
+FAIL Path2D interface: operation arcTo(unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double) assert_equals: property has wrong .length expected 5 but got 0
+FAIL Path2D interface: operation arcTo(unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double) assert_equals: property has wrong .length expected 5 but got 0
+FAIL Path2D interface: operation rect(unrestricted double,unrestricted double,unrestricted double,unrestricted double) assert_equals: property has wrong .length expected 4 but got 0
+FAIL Path2D interface: operation arc(unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,boolean) assert_equals: property has wrong .length expected 5 but got 0
+PASS Path2D interface: operation ellipse(unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,unrestricted double,boolean) 
+PASS DataTransfer interface: existence and properties of interface object 
+PASS DataTransfer interface object length 
+PASS DataTransfer interface object name 
+PASS DataTransfer interface: existence and properties of interface prototype object 
+PASS DataTransfer interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS DataTransfer interface: attribute dropEffect 
+PASS DataTransfer interface: attribute effectAllowed 
+FAIL DataTransfer interface: attribute items assert_true: The prototype object must have a property &quot;items&quot; expected true got false
+PASS DataTransfer interface: operation setDragImage(Element,long,long) 
+PASS DataTransfer interface: attribute types 
+PASS DataTransfer interface: operation getData(DOMString) 
+PASS DataTransfer interface: operation setData(DOMString,DOMString) 
+PASS DataTransfer interface: operation clearData(DOMString) 
+PASS DataTransfer interface: attribute files 
+FAIL DataTransferItemList interface: existence and properties of interface object assert_own_property: self does not have own property &quot;DataTransferItemList&quot; expected property &quot;DataTransferItemList&quot; missing
+FAIL DataTransferItemList interface object length assert_own_property: self does not have own property &quot;DataTransferItemList&quot; expected property &quot;DataTransferItemList&quot; missing
+FAIL DataTransferItemList interface object name assert_own_property: self does not have own property &quot;DataTransferItemList&quot; expected property &quot;DataTransferItemList&quot; missing
+FAIL DataTransferItemList interface: existence and properties of interface prototype object assert_own_property: self does not have own property &quot;DataTransferItemList&quot; expected property &quot;DataTransferItemList&quot; missing
+FAIL DataTransferItemList interface: existence and properties of interface prototype object's &quot;constructor&quot; property assert_own_property: self does not have own property &quot;DataTransferItemList&quot; expected property &quot;DataTransferItemList&quot; missing
+FAIL DataTransferItemList interface: attribute length assert_own_property: self does not have own property &quot;DataTransferItemList&quot; expected property &quot;DataTransferItemList&quot; missing
+FAIL DataTransferItemList interface: operation add(DOMString,DOMString) assert_own_property: self does not have own property &quot;DataTransferItemList&quot; expected property &quot;DataTransferItemList&quot; missing
+FAIL DataTransferItemList interface: operation add(File) assert_own_property: self does not have own property &quot;DataTransferItemList&quot; expected property &quot;DataTransferItemList&quot; missing
+FAIL DataTransferItemList interface: operation remove(unsigned long) assert_own_property: self does not have own property &quot;DataTransferItemList&quot; expected property &quot;DataTransferItemList&quot; missing
+FAIL DataTransferItemList interface: operation clear() assert_own_property: self does not have own property &quot;DataTransferItemList&quot; expected property &quot;DataTransferItemList&quot; missing
+FAIL DataTransferItem interface: existence and properties of interface object assert_own_property: self does not have own property &quot;DataTransferItem&quot; expected property &quot;DataTransferItem&quot; missing
+FAIL DataTransferItem interface object length assert_own_property: self does not have own property &quot;DataTransferItem&quot; expected property &quot;DataTransferItem&quot; missing
+FAIL DataTransferItem interface object name assert_own_property: self does not have own property &quot;DataTransferItem&quot; expected property &quot;DataTransferItem&quot; missing
+FAIL DataTransferItem interface: existence and properties of interface prototype object assert_own_property: self does not have own property &quot;DataTransferItem&quot; expected property &quot;DataTransferItem&quot; missing
+FAIL DataTransferItem interface: existence and properties of interface prototype object's &quot;constructor&quot; property assert_own_property: self does not have own property &quot;DataTransferItem&quot; expected property &quot;DataTransferItem&quot; missing
+FAIL DataTransferItem interface: attribute kind assert_own_property: self does not have own property &quot;DataTransferItem&quot; expected property &quot;DataTransferItem&quot; missing
+FAIL DataTransferItem interface: attribute type assert_own_property: self does not have own property &quot;DataTransferItem&quot; expected property &quot;DataTransferItem&quot; missing
+FAIL DataTransferItem interface: operation getAsString(FunctionStringCallback) assert_own_property: self does not have own property &quot;DataTransferItem&quot; expected property &quot;DataTransferItem&quot; missing
+FAIL DataTransferItem interface: operation getAsFile() assert_own_property: self does not have own property &quot;DataTransferItem&quot; expected property &quot;DataTransferItem&quot; missing
+FAIL DragEvent interface: existence and properties of interface object assert_own_property: self does not have own property &quot;DragEvent&quot; expected property &quot;DragEvent&quot; missing
+FAIL DragEvent interface object length assert_own_property: self does not have own property &quot;DragEvent&quot; expected property &quot;DragEvent&quot; missing
+FAIL DragEvent interface object name assert_own_property: self does not have own property &quot;DragEvent&quot; expected property &quot;DragEvent&quot; missing
+FAIL DragEvent interface: existence and properties of interface prototype object assert_own_property: self does not have own property &quot;DragEvent&quot; expected property &quot;DragEvent&quot; missing
+FAIL DragEvent interface: existence and properties of interface prototype object's &quot;constructor&quot; property assert_own_property: self does not have own property &quot;DragEvent&quot; expected property &quot;DragEvent&quot; missing
+FAIL DragEvent interface: attribute dataTransfer assert_own_property: self does not have own property &quot;DragEvent&quot; expected property &quot;DragEvent&quot; missing
+PASS Window interface: existence and properties of interface object 
+PASS Window interface object length 
+PASS Window interface object name 
+FAIL Window interface: existence and properties of interface prototype object assert_equals: Class name for prototype of Window.prototype is not &quot;WindowProperties&quot; expected &quot;[object WindowProperties]&quot; but got &quot;[object EventTargetPrototype]&quot;
+PASS Window interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS Window interface: attribute self 
+PASS Window interface: attribute name 
+PASS Window interface: attribute history 
+PASS Window interface: attribute locationbar 
+PASS Window interface: attribute menubar 
+PASS Window interface: attribute personalbar 
+PASS Window interface: attribute scrollbars 
+PASS Window interface: attribute statusbar 
+PASS Window interface: attribute toolbar 
+PASS Window interface: attribute status 
+PASS Window interface: operation close() 
+PASS Window interface: attribute closed 
+PASS Window interface: operation stop() 
+PASS Window interface: operation focus() 
+PASS Window interface: operation blur() 
+PASS Window interface: attribute frames 
+PASS Window interface: attribute length 
+PASS Window interface: attribute opener 
+PASS Window interface: attribute parent 
+PASS Window interface: attribute frameElement 
+FAIL Window interface: operation open(DOMString,DOMString,DOMString,boolean) assert_equals: property has wrong .length expected 0 but got 2
+PASS Window interface: attribute navigator 
+FAIL Window interface: attribute external assert_own_property: The global object must have a property &quot;external&quot; expected property &quot;external&quot; missing
+PASS Window interface: attribute applicationCache 
+PASS Window interface: operation alert() 
+PASS Window interface: operation confirm(DOMString) 
+PASS Window interface: operation prompt(DOMString,DOMString) 
+PASS Window interface: operation print() 
+PASS Window interface: operation showModalDialog(DOMString,any) 
+PASS Window interface: operation postMessage(any,DOMString,[object Object]) 
+PASS Window interface: operation captureEvents() 
+PASS Window interface: operation releaseEvents() 
+PASS Window interface: attribute onabort 
+FAIL Window interface: attribute onautocomplete assert_own_property: The global object must have a property &quot;onautocomplete&quot; expected property &quot;onautocomplete&quot; missing
+FAIL Window interface: attribute onautocompleteerror assert_own_property: The global object must have a property &quot;onautocompleteerror&quot; expected property &quot;onautocompleteerror&quot; missing
+PASS Window interface: attribute onblur 
+FAIL Window interface: attribute oncancel assert_own_property: The global object must have a property &quot;oncancel&quot; expected property &quot;oncancel&quot; missing
+PASS Window interface: attribute oncanplay 
+PASS Window interface: attribute oncanplaythrough 
+PASS Window interface: attribute onchange 
+PASS Window interface: attribute onclick 
+FAIL Window interface: attribute onclose assert_own_property: The global object must have a property &quot;onclose&quot; expected property &quot;onclose&quot; missing
+PASS Window interface: attribute oncontextmenu 
+FAIL Window interface: attribute oncuechange assert_own_property: The global object must have a property &quot;oncuechange&quot; expected property &quot;oncuechange&quot; missing
+PASS Window interface: attribute ondblclick 
+PASS Window interface: attribute ondrag 
+PASS Window interface: attribute ondragend 
+PASS Window interface: attribute ondragenter 
+FAIL Window interface: attribute ondragexit assert_own_property: The global object must have a property &quot;ondragexit&quot; expected property &quot;ondragexit&quot; missing
+PASS Window interface: attribute ondragleave 
+PASS Window interface: attribute ondragover 
+PASS Window interface: attribute ondragstart 
+PASS Window interface: attribute ondrop 
+PASS Window interface: attribute ondurationchange 
+PASS Window interface: attribute onemptied 
+PASS Window interface: attribute onended 
+PASS Window interface: attribute onerror 
+PASS Window interface: attribute onfocus 
+PASS Window interface: attribute oninput 
+PASS Window interface: attribute oninvalid 
+PASS Window interface: attribute onkeydown 
+PASS Window interface: attribute onkeypress 
+PASS Window interface: attribute onkeyup 
+PASS Window interface: attribute onload 
+PASS Window interface: attribute onloadeddata 
+PASS Window interface: attribute onloadedmetadata 
+PASS Window interface: attribute onloadstart 
+PASS Window interface: attribute onmousedown 
+PASS Window interface: attribute onmouseenter 
+PASS Window interface: attribute onmouseleave 
+PASS Window interface: attribute onmousemove 
+PASS Window interface: attribute onmouseout 
+PASS Window interface: attribute onmouseover 
+PASS Window interface: attribute onmouseup 
+PASS Window interface: attribute onmousewheel 
+PASS Window interface: attribute onpause 
+PASS Window interface: attribute onplay 
+PASS Window interface: attribute onplaying 
+PASS Window interface: attribute onprogress 
+PASS Window interface: attribute onratechange 
+PASS Window interface: attribute onreset 
+PASS Window interface: attribute onresize 
+PASS Window interface: attribute onscroll 
+PASS Window interface: attribute onseeked 
+PASS Window interface: attribute onseeking 
+PASS Window interface: attribute onselect 
+FAIL Window interface: attribute onshow assert_own_property: The global object must have a property &quot;onshow&quot; expected property &quot;onshow&quot; missing
+FAIL Window interface: attribute onsort assert_own_property: The global object must have a property &quot;onsort&quot; expected property &quot;onsort&quot; missing
+PASS Window interface: attribute onstalled 
+PASS Window interface: attribute onsubmit 
+PASS Window interface: attribute onsuspend 
+PASS Window interface: attribute ontimeupdate 
+FAIL Window interface: attribute ontoggle assert_own_property: The global object must have a property &quot;ontoggle&quot; expected property &quot;ontoggle&quot; missing
+PASS Window interface: attribute onvolumechange 
+PASS Window interface: attribute onwaiting 
+FAIL Window interface: attribute onafterprint assert_own_property: The global object must have a property &quot;onafterprint&quot; expected property &quot;onafterprint&quot; missing
+FAIL Window interface: attribute onbeforeprint assert_own_property: The global object must have a property &quot;onbeforeprint&quot; expected property &quot;onbeforeprint&quot; missing
+PASS Window interface: attribute onbeforeunload 
+PASS Window interface: attribute onhashchange 
+FAIL Window interface: attribute onlanguagechange assert_own_property: The global object must have a property &quot;onlanguagechange&quot; expected property &quot;onlanguagechange&quot; missing
+PASS Window interface: attribute onmessage 
+PASS Window interface: attribute onoffline 
+PASS Window interface: attribute ononline 
+PASS Window interface: attribute onpagehide 
+PASS Window interface: attribute onpageshow 
+PASS Window interface: attribute onpopstate 
+PASS Window interface: attribute onstorage 
+PASS Window interface: attribute onunload 
+PASS Window interface: operation btoa(DOMString) 
+PASS Window interface: operation atob(DOMString) 
+PASS Window interface: operation setTimeout(Function,long,any) 
+PASS Window interface: operation setTimeout(DOMString,long,any) 
+PASS Window interface: operation clearTimeout(long) 
+PASS Window interface: operation setInterval(Function,long,any) 
+PASS Window interface: operation setInterval(DOMString,long,any) 
+PASS Window interface: operation clearInterval(long) 
+FAIL Window interface: operation createImageBitmap(ImageBitmapSource,long,long,long,long) assert_own_property: global object missing non-static operation expected property &quot;createImageBitmap&quot; missing
+PASS Window interface: attribute sessionStorage 
+PASS Window interface: attribute localStorage 
+PASS Window must be primary interface of window 
+PASS Stringification of window 
+PASS Window interface: window must have own property &quot;window&quot; 
+PASS Window interface: window must inherit property &quot;self&quot; with the proper type (1) 
+PASS Window interface: window must have own property &quot;document&quot; 
+PASS Window interface: window must inherit property &quot;name&quot; with the proper type (3) 
+PASS Window interface: window must have own property &quot;location&quot; 
+PASS Window interface: window must inherit property &quot;history&quot; with the proper type (5) 
+PASS Window interface: window must inherit property &quot;locationbar&quot; with the proper type (6) 
+PASS Window interface: window must inherit property &quot;menubar&quot; with the proper type (7) 
+PASS Window interface: window must inherit property &quot;personalbar&quot; with the proper type (8) 
+PASS Window interface: window must inherit property &quot;scrollbars&quot; with the proper type (9) 
+PASS Window interface: window must inherit property &quot;statusbar&quot; with the proper type (10) 
+PASS Window interface: window must inherit property &quot;toolbar&quot; with the proper type (11) 
+PASS Window interface: window must inherit property &quot;status&quot; with the proper type (12) 
+PASS Window interface: window must inherit property &quot;close&quot; with the proper type (13) 
+PASS Window interface: window must inherit property &quot;closed&quot; with the proper type (14) 
+PASS Window interface: window must inherit property &quot;stop&quot; with the proper type (15) 
+PASS Window interface: window must inherit property &quot;focus&quot; with the proper type (16) 
+PASS Window interface: window must inherit property &quot;blur&quot; with the proper type (17) 
+PASS Window interface: window must inherit property &quot;frames&quot; with the proper type (18) 
+PASS Window interface: window must inherit property &quot;length&quot; with the proper type (19) 
+PASS Window interface: window must have own property &quot;top&quot; 
+PASS Window interface: window must inherit property &quot;opener&quot; with the proper type (21) 
+PASS Window interface: window must inherit property &quot;parent&quot; with the proper type (22) 
+PASS Window interface: window must inherit property &quot;frameElement&quot; with the proper type (23) 
+PASS Window interface: window must inherit property &quot;open&quot; with the proper type (24) 
+PASS Window interface: calling open(DOMString,DOMString,DOMString,boolean) on window with too few arguments must throw TypeError 
+PASS Window interface: window must inherit property &quot;navigator&quot; with the proper type (27) 
+FAIL Window interface: window must inherit property &quot;external&quot; with the proper type (28) assert_own_property: expected property &quot;external&quot; missing
+PASS Window interface: window must inherit property &quot;applicationCache&quot; with the proper type (29) 
+PASS Window interface: window must inherit property &quot;alert&quot; with the proper type (30) 
+PASS Window interface: window must inherit property &quot;confirm&quot; with the proper type (31) 
+PASS Window interface: calling confirm(DOMString) on window with too few arguments must throw TypeError 
+PASS Window interface: window must inherit property &quot;prompt&quot; with the proper type (32) 
+PASS Window interface: calling prompt(DOMString,DOMString) on window with too few arguments must throw TypeError 
+PASS Window interface: window must inherit property &quot;print&quot; with the proper type (33) 
+PASS Window interface: window must inherit property &quot;showModalDialog&quot; with the proper type (34) 
+PASS Window interface: calling showModalDialog(DOMString,any) on window with too few arguments must throw TypeError 
+PASS Window interface: window must inherit property &quot;postMessage&quot; with the proper type (35) 
+FAIL Window interface: calling postMessage(any,DOMString,[object Object]) on window with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; threw object &quot;SyntaxError (DOM Exception 12): The string did not match ...&quot; (&quot;SyntaxError&quot;) expected object &quot;TypeError&quot; (&quot;TypeError&quot;)
+PASS Window interface: window must inherit property &quot;captureEvents&quot; with the proper type (36) 
+PASS Window interface: window must inherit property &quot;releaseEvents&quot; with the proper type (37) 
+PASS Window interface: window must inherit property &quot;onabort&quot; with the proper type (38) 
+FAIL Window interface: window must inherit property &quot;onautocomplete&quot; with the proper type (39) assert_own_property: expected property &quot;onautocomplete&quot; missing
+FAIL Window interface: window must inherit property &quot;onautocompleteerror&quot; with the proper type (40) assert_own_property: expected property &quot;onautocompleteerror&quot; missing
+PASS Window interface: window must inherit property &quot;onblur&quot; with the proper type (41) 
+FAIL Window interface: window must inherit property &quot;oncancel&quot; with the proper type (42) assert_own_property: expected property &quot;oncancel&quot; missing
+PASS Window interface: window must inherit property &quot;oncanplay&quot; with the proper type (43) 
+PASS Window interface: window must inherit property &quot;oncanplaythrough&quot; with the proper type (44) 
+PASS Window interface: window must inherit property &quot;onchange&quot; with the proper type (45) 
+PASS Window interface: window must inherit property &quot;onclick&quot; with the proper type (46) 
+FAIL Window interface: window must inherit property &quot;onclose&quot; with the proper type (47) assert_own_property: expected property &quot;onclose&quot; missing
+PASS Window interface: window must inherit property &quot;oncontextmenu&quot; with the proper type (48) 
+FAIL Window interface: window must inherit property &quot;oncuechange&quot; with the proper type (49) assert_own_property: expected property &quot;oncuechange&quot; missing
+PASS Window interface: window must inherit property &quot;ondblclick&quot; with the proper type (50) 
+PASS Window interface: window must inherit property &quot;ondrag&quot; with the proper type (51) 
+PASS Window interface: window must inherit property &quot;ondragend&quot; with the proper type (52) 
+PASS Window interface: window must inherit property &quot;ondragenter&quot; with the proper type (53) 
+FAIL Window interface: window must inherit property &quot;ondragexit&quot; with the proper type (54) assert_own_property: expected property &quot;ondragexit&quot; missing
+PASS Window interface: window must inherit property &quot;ondragleave&quot; with the proper type (55) 
+PASS Window interface: window must inherit property &quot;ondragover&quot; with the proper type (56) 
+PASS Window interface: window must inherit property &quot;ondragstart&quot; with the proper type (57) 
+PASS Window interface: window must inherit property &quot;ondrop&quot; with the proper type (58) 
+PASS Window interface: window must inherit property &quot;ondurationchange&quot; with the proper type (59) 
+PASS Window interface: window must inherit property &quot;onemptied&quot; with the proper type (60) 
+PASS Window interface: window must inherit property &quot;onended&quot; with the proper type (61) 
+PASS Window interface: window must inherit property &quot;onerror&quot; with the proper type (62) 
+PASS Window interface: window must inherit property &quot;onfocus&quot; with the proper type (63) 
+PASS Window interface: window must inherit property &quot;oninput&quot; with the proper type (64) 
+PASS Window interface: window must inherit property &quot;oninvalid&quot; with the proper type (65) 
+PASS Window interface: window must inherit property &quot;onkeydown&quot; with the proper type (66) 
+PASS Window interface: window must inherit property &quot;onkeypress&quot; with the proper type (67) 
+PASS Window interface: window must inherit property &quot;onkeyup&quot; with the proper type (68) 
+PASS Window interface: window must inherit property &quot;onload&quot; with the proper type (69) 
+PASS Window interface: window must inherit property &quot;onloadeddata&quot; with the proper type (70) 
+PASS Window interface: window must inherit property &quot;onloadedmetadata&quot; with the proper type (71) 
+PASS Window interface: window must inherit property &quot;onloadstart&quot; with the proper type (72) 
+PASS Window interface: window must inherit property &quot;onmousedown&quot; with the proper type (73) 
+PASS Window interface: window must inherit property &quot;onmouseenter&quot; with the proper type (74) 
+PASS Window interface: window must inherit property &quot;onmouseleave&quot; with the proper type (75) 
+PASS Window interface: window must inherit property &quot;onmousemove&quot; with the proper type (76) 
+PASS Window interface: window must inherit property &quot;onmouseout&quot; with the proper type (77) 
+PASS Window interface: window must inherit property &quot;onmouseover&quot; with the proper type (78) 
+PASS Window interface: window must inherit property &quot;onmouseup&quot; with the proper type (79) 
+PASS Window interface: window must inherit property &quot;onmousewheel&quot; with the proper type (80) 
+PASS Window interface: window must inherit property &quot;onpause&quot; with the proper type (81) 
+PASS Window interface: window must inherit property &quot;onplay&quot; with the proper type (82) 
+PASS Window interface: window must inherit property &quot;onplaying&quot; with the proper type (83) 
+PASS Window interface: window must inherit property &quot;onprogress&quot; with the proper type (84) 
+PASS Window interface: window must inherit property &quot;onratechange&quot; with the proper type (85) 
+PASS Window interface: window must inherit property &quot;onreset&quot; with the proper type (86) 
+PASS Window interface: window must inherit property &quot;onresize&quot; with the proper type (87) 
+PASS Window interface: window must inherit property &quot;onscroll&quot; with the proper type (88) 
+PASS Window interface: window must inherit property &quot;onseeked&quot; with the proper type (89) 
+PASS Window interface: window must inherit property &quot;onseeking&quot; with the proper type (90) 
+PASS Window interface: window must inherit property &quot;onselect&quot; with the proper type (91) 
+FAIL Window interface: window must inherit property &quot;onshow&quot; with the proper type (92) assert_own_property: expected property &quot;onshow&quot; missing
+FAIL Window interface: window must inherit property &quot;onsort&quot; with the proper type (93) assert_own_property: expected property &quot;onsort&quot; missing
+PASS Window interface: window must inherit property &quot;onstalled&quot; with the proper type (94) 
+PASS Window interface: window must inherit property &quot;onsubmit&quot; with the proper type (95) 
+PASS Window interface: window must inherit property &quot;onsuspend&quot; with the proper type (96) 
+PASS Window interface: window must inherit property &quot;ontimeupdate&quot; with the proper type (97) 
+FAIL Window interface: window must inherit property &quot;ontoggle&quot; with the proper type (98) assert_own_property: expected property &quot;ontoggle&quot; missing
+PASS Window interface: window must inherit property &quot;onvolumechange&quot; with the proper type (99) 
+PASS Window interface: window must inherit property &quot;onwaiting&quot; with the proper type (100) 
+FAIL Window interface: window must inherit property &quot;onafterprint&quot; with the proper type (101) assert_own_property: expected property &quot;onafterprint&quot; missing
+FAIL Window interface: window must inherit property &quot;onbeforeprint&quot; with the proper type (102) assert_own_property: expected property &quot;onbeforeprint&quot; missing
+PASS Window interface: window must inherit property &quot;onbeforeunload&quot; with the proper type (103) 
+PASS Window interface: window must inherit property &quot;onhashchange&quot; with the proper type (104) 
+FAIL Window interface: window must inherit property &quot;onlanguagechange&quot; with the proper type (105) assert_own_property: expected property &quot;onlanguagechange&quot; missing
+PASS Window interface: window must inherit property &quot;onmessage&quot; with the proper type (106) 
+PASS Window interface: window must inherit property &quot;onoffline&quot; with the proper type (107) 
+PASS Window interface: window must inherit property &quot;ononline&quot; with the proper type (108) 
+PASS Window interface: window must inherit property &quot;onpagehide&quot; with the proper type (109) 
+PASS Window interface: window must inherit property &quot;onpageshow&quot; with the proper type (110) 
+PASS Window interface: window must inherit property &quot;onpopstate&quot; with the proper type (111) 
+PASS Window interface: window must inherit property &quot;onstorage&quot; with the proper type (112) 
+PASS Window interface: window must inherit property &quot;onunload&quot; with the proper type (113) 
+PASS Window interface: window must inherit property &quot;btoa&quot; with the proper type (114) 
+PASS Window interface: calling btoa(DOMString) on window with too few arguments must throw TypeError 
+PASS Window interface: window must inherit property &quot;atob&quot; with the proper type (115) 
+PASS Window interface: calling atob(DOMString) on window with too few arguments must throw TypeError 
+PASS Window interface: window must inherit property &quot;setTimeout&quot; with the proper type (116) 
+FAIL Window interface: calling setTimeout(Function,long,any) on window with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Window interface: window must inherit property &quot;setTimeout&quot; with the proper type (117) 
+FAIL Window interface: calling setTimeout(DOMString,long,any) on window with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Window interface: window must inherit property &quot;clearTimeout&quot; with the proper type (118) 
+PASS Window interface: calling clearTimeout(long) on window with too few arguments must throw TypeError 
+PASS Window interface: window must inherit property &quot;setInterval&quot; with the proper type (119) 
+FAIL Window interface: calling setInterval(Function,long,any) on window with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Window interface: window must inherit property &quot;setInterval&quot; with the proper type (120) 
+FAIL Window interface: calling setInterval(DOMString,long,any) on window with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Window interface: window must inherit property &quot;clearInterval&quot; with the proper type (121) 
+PASS Window interface: calling clearInterval(long) on window with too few arguments must throw TypeError 
+FAIL Window interface: window must inherit property &quot;createImageBitmap&quot; with the proper type (122) assert_own_property: expected property &quot;createImageBitmap&quot; missing
+FAIL Window interface: calling createImageBitmap(ImageBitmapSource,long,long,long,long) on window with too few arguments must throw TypeError assert_own_property: expected property &quot;createImageBitmap&quot; missing
+PASS Window interface: window must inherit property &quot;sessionStorage&quot; with the proper type (123) 
+PASS Window interface: window must inherit property &quot;localStorage&quot; with the proper type (124) 
+PASS EventTarget interface: window must inherit property &quot;addEventListener&quot; with the proper type (0) 
+FAIL EventTarget interface: calling addEventListener(DOMString,EventListener,boolean) on window with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS EventTarget interface: window must inherit property &quot;removeEventListener&quot; with the proper type (1) 
+FAIL EventTarget interface: calling removeEventListener(DOMString,EventListener,boolean) on window with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS EventTarget interface: window must inherit property &quot;dispatchEvent&quot; with the proper type (2) 
+PASS EventTarget interface: calling dispatchEvent(Event) on window with too few arguments must throw TypeError 
+PASS BarProp interface: existence and properties of interface object 
+PASS BarProp interface object length 
+PASS BarProp interface object name 
+PASS BarProp interface: existence and properties of interface prototype object 
+PASS BarProp interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS BarProp interface: attribute visible 
+PASS History interface: existence and properties of interface object 
+PASS History interface object length 
+PASS History interface object name 
+PASS History interface: existence and properties of interface prototype object 
+PASS History interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS History interface: attribute length 
+FAIL History interface: attribute scrollRestoration assert_true: The prototype object must have a property &quot;scrollRestoration&quot; expected true got false
+PASS History interface: attribute state 
+PASS History interface: operation go(long) 
+PASS History interface: operation back() 
+PASS History interface: operation forward() 
+PASS History interface: operation pushState(any,DOMString,DOMString) 
+PASS History interface: operation replaceState(any,DOMString,DOMString) 
+PASS History must be primary interface of window.history 
+PASS Stringification of window.history 
+PASS History interface: window.history must inherit property &quot;length&quot; with the proper type (0) 
+FAIL History interface: window.history must inherit property &quot;scrollRestoration&quot; with the proper type (1) assert_inherits: property &quot;scrollRestoration&quot; not found in prototype chain
+PASS History interface: window.history must inherit property &quot;state&quot; with the proper type (2) 
+PASS History interface: window.history must inherit property &quot;go&quot; with the proper type (3) 
+PASS History interface: calling go(long) on window.history with too few arguments must throw TypeError 
+PASS History interface: window.history must inherit property &quot;back&quot; with the proper type (4) 
+PASS History interface: window.history must inherit property &quot;forward&quot; with the proper type (5) 
+PASS History interface: window.history must inherit property &quot;pushState&quot; with the proper type (6) 
+FAIL History interface: calling pushState(any,DOMString,DOMString) on window.history with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS History interface: window.history must inherit property &quot;replaceState&quot; with the proper type (7) 
+FAIL History interface: calling replaceState(any,DOMString,DOMString) on window.history with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS Location interface: existence and properties of interface object 
+PASS Location interface object length 
+PASS Location interface object name 
+PASS Location interface: existence and properties of interface prototype object 
+PASS Location interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS Location must be primary interface of window.location 
+PASS Stringification of window.location 
+PASS Location interface: window.location must have own property &quot;href&quot; 
+PASS Location interface: window.location must have own property &quot;origin&quot; 
+PASS Location interface: window.location must have own property &quot;protocol&quot; 
+PASS Location interface: window.location must have own property &quot;host&quot; 
+PASS Location interface: window.location must have own property &quot;hostname&quot; 
+PASS Location interface: window.location must have own property &quot;port&quot; 
+PASS Location interface: window.location must have own property &quot;pathname&quot; 
+PASS Location interface: window.location must have own property &quot;search&quot; 
+PASS Location interface: window.location must have own property &quot;hash&quot; 
+PASS Location interface: window.location must have own property &quot;assign&quot; 
+PASS Location interface: calling assign(USVString) on window.location with too few arguments must throw TypeError 
+PASS Location interface: window.location must have own property &quot;replace&quot; 
+PASS Location interface: calling replace(USVString) on window.location with too few arguments must throw TypeError 
+PASS Location interface: window.location must have own property &quot;reload&quot; 
+PASS Location interface: window.location must have own property &quot;ancestorOrigins&quot; 
+PASS PopStateEvent interface: existence and properties of interface object 
+PASS PopStateEvent interface object length 
+PASS PopStateEvent interface object name 
+PASS PopStateEvent interface: existence and properties of interface prototype object 
+PASS PopStateEvent interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS PopStateEvent interface: attribute state 
+PASS PopStateEvent must be primary interface of new PopStateEvent(&quot;popstate&quot;, { data: {} }) 
+PASS Stringification of new PopStateEvent(&quot;popstate&quot;, { data: {} }) 
+PASS PopStateEvent interface: new PopStateEvent(&quot;popstate&quot;, { data: {} }) must inherit property &quot;state&quot; with the proper type (0) 
+PASS Event interface: new PopStateEvent(&quot;popstate&quot;, { data: {} }) must inherit property &quot;type&quot; with the proper type (0) 
+PASS Event interface: new PopStateEvent(&quot;popstate&quot;, { data: {} }) must inherit property &quot;target&quot; with the proper type (1) 
+PASS Event interface: new PopStateEvent(&quot;popstate&quot;, { data: {} }) must inherit property &quot;currentTarget&quot; with the proper type (2) 
+PASS Event interface: new PopStateEvent(&quot;popstate&quot;, { data: {} }) must inherit property &quot;NONE&quot; with the proper type (3) 
+PASS Event interface: new PopStateEvent(&quot;popstate&quot;, { data: {} }) must inherit property &quot;CAPTURING_PHASE&quot; with the proper type (4) 
+PASS Event interface: new PopStateEvent(&quot;popstate&quot;, { data: {} }) must inherit property &quot;AT_TARGET&quot; with the proper type (5) 
+PASS Event interface: new PopStateEvent(&quot;popstate&quot;, { data: {} }) must inherit property &quot;BUBBLING_PHASE&quot; with the proper type (6) 
+PASS Event interface: new PopStateEvent(&quot;popstate&quot;, { data: {} }) must inherit property &quot;eventPhase&quot; with the proper type (7) 
+PASS Event interface: new PopStateEvent(&quot;popstate&quot;, { data: {} }) must inherit property &quot;stopPropagation&quot; with the proper type (8) 
+PASS Event interface: new PopStateEvent(&quot;popstate&quot;, { data: {} }) must inherit property &quot;stopImmediatePropagation&quot; with the proper type (9) 
+PASS Event interface: new PopStateEvent(&quot;popstate&quot;, { data: {} }) must inherit property &quot;bubbles&quot; with the proper type (10) 
+PASS Event interface: new PopStateEvent(&quot;popstate&quot;, { data: {} }) must inherit property &quot;cancelable&quot; with the proper type (11) 
+PASS Event interface: new PopStateEvent(&quot;popstate&quot;, { data: {} }) must inherit property &quot;preventDefault&quot; with the proper type (12) 
+PASS Event interface: new PopStateEvent(&quot;popstate&quot;, { data: {} }) must inherit property &quot;defaultPrevented&quot; with the proper type (13) 
+PASS Event interface: new PopStateEvent(&quot;popstate&quot;, { data: {} }) must have own property &quot;isTrusted&quot; 
+PASS Event interface: new PopStateEvent(&quot;popstate&quot;, { data: {} }) must inherit property &quot;timeStamp&quot; with the proper type (15) 
+PASS Event interface: new PopStateEvent(&quot;popstate&quot;, { data: {} }) must inherit property &quot;initEvent&quot; with the proper type (16) 
+FAIL Event interface: calling initEvent(DOMString,boolean,boolean) on new PopStateEvent(&quot;popstate&quot;, { data: {} }) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS HashChangeEvent interface: existence and properties of interface object 
+PASS HashChangeEvent interface object length 
+PASS HashChangeEvent interface object name 
+PASS HashChangeEvent interface: existence and properties of interface prototype object 
+PASS HashChangeEvent interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HashChangeEvent interface: attribute oldURL 
+PASS HashChangeEvent interface: attribute newURL 
+PASS PageTransitionEvent interface: existence and properties of interface object 
+PASS PageTransitionEvent interface object length 
+PASS PageTransitionEvent interface object name 
+PASS PageTransitionEvent interface: existence and properties of interface prototype object 
+PASS PageTransitionEvent interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS PageTransitionEvent interface: attribute persisted 
+PASS BeforeUnloadEvent interface: existence and properties of interface object 
+PASS BeforeUnloadEvent interface object length 
+PASS BeforeUnloadEvent interface object name 
+PASS BeforeUnloadEvent interface: existence and properties of interface prototype object 
+PASS BeforeUnloadEvent interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS BeforeUnloadEvent interface: attribute returnValue 
+PASS ApplicationCache interface: existence and properties of interface object 
+PASS ApplicationCache interface object length 
+PASS ApplicationCache interface object name 
+PASS ApplicationCache interface: existence and properties of interface prototype object 
+PASS ApplicationCache interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS ApplicationCache interface: constant UNCACHED on interface object 
+PASS ApplicationCache interface: constant UNCACHED on interface prototype object 
+PASS ApplicationCache interface: constant IDLE on interface object 
+PASS ApplicationCache interface: constant IDLE on interface prototype object 
+PASS ApplicationCache interface: constant CHECKING on interface object 
+PASS ApplicationCache interface: constant CHECKING on interface prototype object 
+PASS ApplicationCache interface: constant DOWNLOADING on interface object 
+PASS ApplicationCache interface: constant DOWNLOADING on interface prototype object 
+PASS ApplicationCache interface: constant UPDATEREADY on interface object 
+PASS ApplicationCache interface: constant UPDATEREADY on interface prototype object 
+PASS ApplicationCache interface: constant OBSOLETE on interface object 
+PASS ApplicationCache interface: constant OBSOLETE on interface prototype object 
+PASS ApplicationCache interface: attribute status 
+PASS ApplicationCache interface: operation update() 
+PASS ApplicationCache interface: operation abort() 
+PASS ApplicationCache interface: operation swapCache() 
+PASS ApplicationCache interface: attribute onchecking 
+PASS ApplicationCache interface: attribute onerror 
+PASS ApplicationCache interface: attribute onnoupdate 
+PASS ApplicationCache interface: attribute ondownloading 
+PASS ApplicationCache interface: attribute onprogress 
+PASS ApplicationCache interface: attribute onupdateready 
+PASS ApplicationCache interface: attribute oncached 
+PASS ApplicationCache interface: attribute onobsolete 
+PASS ApplicationCache must be primary interface of window.applicationCache 
+PASS Stringification of window.applicationCache 
+PASS ApplicationCache interface: window.applicationCache must inherit property &quot;UNCACHED&quot; with the proper type (0) 
+PASS ApplicationCache interface: window.applicationCache must inherit property &quot;IDLE&quot; with the proper type (1) 
+PASS ApplicationCache interface: window.applicationCache must inherit property &quot;CHECKING&quot; with the proper type (2) 
+PASS ApplicationCache interface: window.applicationCache must inherit property &quot;DOWNLOADING&quot; with the proper type (3) 
+PASS ApplicationCache interface: window.applicationCache must inherit property &quot;UPDATEREADY&quot; with the proper type (4) 
+PASS ApplicationCache interface: window.applicationCache must inherit property &quot;OBSOLETE&quot; with the proper type (5) 
+PASS ApplicationCache interface: window.applicationCache must inherit property &quot;status&quot; with the proper type (6) 
+PASS ApplicationCache interface: window.applicationCache must inherit property &quot;update&quot; with the proper type (7) 
+PASS ApplicationCache interface: window.applicationCache must inherit property &quot;abort&quot; with the proper type (8) 
+PASS ApplicationCache interface: window.applicationCache must inherit property &quot;swapCache&quot; with the proper type (9) 
+PASS ApplicationCache interface: window.applicationCache must inherit property &quot;onchecking&quot; with the proper type (10) 
+PASS ApplicationCache interface: window.applicationCache must inherit property &quot;onerror&quot; with the proper type (11) 
+PASS ApplicationCache interface: window.applicationCache must inherit property &quot;onnoupdate&quot; with the proper type (12) 
+PASS ApplicationCache interface: window.applicationCache must inherit property &quot;ondownloading&quot; with the proper type (13) 
+PASS ApplicationCache interface: window.applicationCache must inherit property &quot;onprogress&quot; with the proper type (14) 
+PASS ApplicationCache interface: window.applicationCache must inherit property &quot;onupdateready&quot; with the proper type (15) 
+PASS ApplicationCache interface: window.applicationCache must inherit property &quot;oncached&quot; with the proper type (16) 
+PASS ApplicationCache interface: window.applicationCache must inherit property &quot;onobsolete&quot; with the proper type (17) 
+PASS EventTarget interface: window.applicationCache must inherit property &quot;addEventListener&quot; with the proper type (0) 
+FAIL EventTarget interface: calling addEventListener(DOMString,EventListener,boolean) on window.applicationCache with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS EventTarget interface: window.applicationCache must inherit property &quot;removeEventListener&quot; with the proper type (1) 
+FAIL EventTarget interface: calling removeEventListener(DOMString,EventListener,boolean) on window.applicationCache with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS EventTarget interface: window.applicationCache must inherit property &quot;dispatchEvent&quot; with the proper type (2) 
+PASS EventTarget interface: calling dispatchEvent(Event) on window.applicationCache with too few arguments must throw TypeError 
+PASS ErrorEvent interface: existence and properties of interface object 
+PASS ErrorEvent interface object length 
+PASS ErrorEvent interface object name 
+PASS ErrorEvent interface: existence and properties of interface prototype object 
+PASS ErrorEvent interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS ErrorEvent interface: attribute message 
+PASS ErrorEvent interface: attribute filename 
+PASS ErrorEvent interface: attribute lineno 
+PASS ErrorEvent interface: attribute colno 
+PASS ErrorEvent interface: attribute error 
+PASS Navigator interface: existence and properties of interface object 
+PASS Navigator interface object length 
+PASS Navigator interface object name 
+PASS Navigator interface: existence and properties of interface prototype object 
+PASS Navigator interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS Navigator interface: attribute appCodeName 
+PASS Navigator interface: attribute appName 
+PASS Navigator interface: attribute appVersion 
+PASS Navigator interface: attribute platform 
+PASS Navigator interface: attribute product 
+FAIL Navigator interface: operation taintEnabled() assert_own_property: interface prototype object missing non-static operation expected property &quot;taintEnabled&quot; missing
+PASS Navigator interface: attribute userAgent 
+PASS Navigator interface: attribute language 
+FAIL Navigator interface: attribute languages assert_true: The prototype object must have a property &quot;languages&quot; expected true got false
+PASS Navigator interface: attribute onLine 
+FAIL Navigator interface: operation registerProtocolHandler(DOMString,DOMString,DOMString) assert_own_property: interface prototype object missing non-static operation expected property &quot;registerProtocolHandler&quot; missing
+FAIL Navigator interface: operation registerContentHandler(DOMString,DOMString,DOMString) assert_own_property: interface prototype object missing non-static operation expected property &quot;registerContentHandler&quot; missing
+FAIL Navigator interface: operation isProtocolHandlerRegistered(DOMString,DOMString) assert_own_property: interface prototype object missing non-static operation expected property &quot;isProtocolHandlerRegistered&quot; missing
+FAIL Navigator interface: operation isContentHandlerRegistered(DOMString,DOMString) assert_own_property: interface prototype object missing non-static operation expected property &quot;isContentHandlerRegistered&quot; missing
+FAIL Navigator interface: operation unregisterProtocolHandler(DOMString,DOMString) assert_own_property: interface prototype object missing non-static operation expected property &quot;unregisterProtocolHandler&quot; missing
+FAIL Navigator interface: operation unregisterContentHandler(DOMString,DOMString) assert_own_property: interface prototype object missing non-static operation expected property &quot;unregisterContentHandler&quot; missing
+PASS Navigator interface: attribute cookieEnabled 
+FAIL Navigator interface: operation yieldForStorageUpdates() assert_own_property: interface prototype object missing non-static operation expected property &quot;yieldForStorageUpdates&quot; missing
+PASS Navigator interface: attribute plugins 
+PASS Navigator interface: attribute mimeTypes 
+FAIL Navigator interface: attribute javaEnabled assert_throws: getting property on prototype object must throw TypeError function &quot;function () {
+    [native code]
+}&quot; did not throw
+PASS Navigator must be primary interface of window.navigator 
+PASS Stringification of window.navigator 
+PASS Navigator interface: window.navigator must inherit property &quot;appCodeName&quot; with the proper type (0) 
+PASS Navigator interface: window.navigator must inherit property &quot;appName&quot; with the proper type (1) 
+PASS Navigator interface: window.navigator must inherit property &quot;appVersion&quot; with the proper type (2) 
+PASS Navigator interface: window.navigator must inherit property &quot;platform&quot; with the proper type (3) 
+PASS Navigator interface: window.navigator must inherit property &quot;product&quot; with the proper type (4) 
+FAIL Navigator interface: window.navigator must inherit property &quot;taintEnabled&quot; with the proper type (5) assert_inherits: property &quot;taintEnabled&quot; not found in prototype chain
+PASS Navigator interface: window.navigator must inherit property &quot;userAgent&quot; with the proper type (6) 
+PASS Navigator interface: window.navigator must inherit property &quot;language&quot; with the proper type (7) 
+FAIL Navigator interface: window.navigator must inherit property &quot;languages&quot; with the proper type (8) assert_inherits: property &quot;languages&quot; not found in prototype chain
+PASS Navigator interface: window.navigator must inherit property &quot;onLine&quot; with the proper type (9) 
+FAIL Navigator interface: window.navigator must inherit property &quot;registerProtocolHandler&quot; with the proper type (10) assert_inherits: property &quot;registerProtocolHandler&quot; not found in prototype chain
+FAIL Navigator interface: calling registerProtocolHandler(DOMString,DOMString,DOMString) on window.navigator with too few arguments must throw TypeError assert_inherits: property &quot;registerProtocolHandler&quot; not found in prototype chain
+FAIL Navigator interface: window.navigator must inherit property &quot;registerContentHandler&quot; with the proper type (11) assert_inherits: property &quot;registerContentHandler&quot; not found in prototype chain
+FAIL Navigator interface: calling registerContentHandler(DOMString,DOMString,DOMString) on window.navigator with too few arguments must throw TypeError assert_inherits: property &quot;registerContentHandler&quot; not found in prototype chain
+FAIL Navigator interface: window.navigator must inherit property &quot;isProtocolHandlerRegistered&quot; with the proper type (12) assert_inherits: property &quot;isProtocolHandlerRegistered&quot; not found in prototype chain
+FAIL Navigator interface: calling isProtocolHandlerRegistered(DOMString,DOMString) on window.navigator with too few arguments must throw TypeError assert_inherits: property &quot;isProtocolHandlerRegistered&quot; not found in prototype chain
+FAIL Navigator interface: window.navigator must inherit property &quot;isContentHandlerRegistered&quot; with the proper type (13) assert_inherits: property &quot;isContentHandlerRegistered&quot; not found in prototype chain
+FAIL Navigator interface: calling isContentHandlerRegistered(DOMString,DOMString) on window.navigator with too few arguments must throw TypeError assert_inherits: property &quot;isContentHandlerRegistered&quot; not found in prototype chain
+FAIL Navigator interface: window.navigator must inherit property &quot;unregisterProtocolHandler&quot; with the proper type (14) assert_inherits: property &quot;unregisterProtocolHandler&quot; not found in prototype chain
+FAIL Navigator interface: calling unregisterProtocolHandler(DOMString,DOMString) on window.navigator with too few arguments must throw TypeError assert_inherits: property &quot;unregisterProtocolHandler&quot; not found in prototype chain
+FAIL Navigator interface: window.navigator must inherit property &quot;unregisterContentHandler&quot; with the proper type (15) assert_inherits: property &quot;unregisterContentHandler&quot; not found in prototype chain
+FAIL Navigator interface: calling unregisterContentHandler(DOMString,DOMString) on window.navigator with too few arguments must throw TypeError assert_inherits: property &quot;unregisterContentHandler&quot; not found in prototype chain
+PASS Navigator interface: window.navigator must inherit property &quot;cookieEnabled&quot; with the proper type (16) 
+FAIL Navigator interface: window.navigator must inherit property &quot;yieldForStorageUpdates&quot; with the proper type (17) assert_inherits: property &quot;yieldForStorageUpdates&quot; not found in prototype chain
+PASS Navigator interface: window.navigator must inherit property &quot;plugins&quot; with the proper type (18) 
+PASS Navigator interface: window.navigator must inherit property &quot;mimeTypes&quot; with the proper type (19) 
+FAIL Navigator interface: window.navigator must inherit property &quot;javaEnabled&quot; with the proper type (20) assert_equals: expected &quot;boolean&quot; but got &quot;function&quot;
+PASS PluginArray interface: existence and properties of interface object 
+PASS PluginArray interface object length 
+PASS PluginArray interface object name 
+PASS PluginArray interface: existence and properties of interface prototype object 
+PASS PluginArray interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS PluginArray interface: operation refresh(boolean) 
+PASS PluginArray interface: attribute length 
+FAIL PluginArray interface: operation item(unsigned long) assert_equals: property has wrong .length expected 1 but got 0
+FAIL PluginArray interface: operation namedItem(DOMString) assert_equals: property has wrong .length expected 1 but got 0
+PASS MimeTypeArray interface: existence and properties of interface object 
+PASS MimeTypeArray interface object length 
+PASS MimeTypeArray interface object name 
+PASS MimeTypeArray interface: existence and properties of interface prototype object 
+PASS MimeTypeArray interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS MimeTypeArray interface: attribute length 
+FAIL MimeTypeArray interface: operation item(unsigned long) assert_equals: property has wrong .length expected 1 but got 0
+FAIL MimeTypeArray interface: operation namedItem(DOMString) assert_equals: property has wrong .length expected 1 but got 0
+PASS Plugin interface: existence and properties of interface object 
+PASS Plugin interface object length 
+PASS Plugin interface object name 
+PASS Plugin interface: existence and properties of interface prototype object 
+PASS Plugin interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS Plugin interface: attribute name 
+PASS Plugin interface: attribute description 
+PASS Plugin interface: attribute filename 
+PASS Plugin interface: attribute length 
+FAIL Plugin interface: operation item(unsigned long) assert_equals: property has wrong .length expected 1 but got 0
+FAIL Plugin interface: operation namedItem(DOMString) assert_equals: property has wrong .length expected 1 but got 0
+PASS MimeType interface: existence and properties of interface object 
+PASS MimeType interface object length 
+PASS MimeType interface object name 
+PASS MimeType interface: existence and properties of interface prototype object 
+PASS MimeType interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS MimeType interface: attribute type 
+PASS MimeType interface: attribute description 
+PASS MimeType interface: attribute suffixes 
+PASS MimeType interface: attribute enabledPlugin 
+FAIL External interface: existence and properties of interface object assert_own_property: self does not have own property &quot;External&quot; expected property &quot;External&quot; missing
+FAIL External interface object length assert_own_property: self does not have own property &quot;External&quot; expected property &quot;External&quot; missing
+FAIL External interface object name assert_own_property: self does not have own property &quot;External&quot; expected property &quot;External&quot; missing
+FAIL External interface: existence and properties of interface prototype object assert_own_property: self does not have own property &quot;External&quot; expected property &quot;External&quot; missing
+FAIL External interface: existence and properties of interface prototype object's &quot;constructor&quot; property assert_own_property: self does not have own property &quot;External&quot; expected property &quot;External&quot; missing
+FAIL External interface: operation AddSearchProvider(DOMString) assert_own_property: self does not have own property &quot;External&quot; expected property &quot;External&quot; missing
+FAIL External interface: operation IsSearchProviderInstalled(DOMString) assert_own_property: self does not have own property &quot;External&quot; expected property &quot;External&quot; missing
+FAIL External must be primary interface of window.external assert_equals: wrong typeof object expected &quot;object&quot; but got &quot;undefined&quot;
+FAIL Stringification of window.external assert_equals: wrong typeof object expected &quot;object&quot; but got &quot;undefined&quot;
+FAIL External interface: window.external must inherit property &quot;AddSearchProvider&quot; with the proper type (0) assert_equals: wrong typeof object expected &quot;object&quot; but got &quot;undefined&quot;
+FAIL External interface: calling AddSearchProvider(DOMString) on window.external with too few arguments must throw TypeError assert_equals: wrong typeof object expected &quot;object&quot; but got &quot;undefined&quot;
+FAIL External interface: window.external must inherit property &quot;IsSearchProviderInstalled&quot; with the proper type (1) assert_equals: wrong typeof object expected &quot;object&quot; but got &quot;undefined&quot;
+FAIL External interface: calling IsSearchProviderInstalled(DOMString) on window.external with too few arguments must throw TypeError assert_equals: wrong typeof object expected &quot;object&quot; but got &quot;undefined&quot;
+FAIL ImageBitmap interface: existence and properties of interface object assert_own_property: self does not have own property &quot;ImageBitmap&quot; expected property &quot;ImageBitmap&quot; missing
+FAIL ImageBitmap interface object length assert_own_property: self does not have own property &quot;ImageBitmap&quot; expected property &quot;ImageBitmap&quot; missing
+FAIL ImageBitmap interface object name assert_own_property: self does not have own property &quot;ImageBitmap&quot; expected property &quot;ImageBitmap&quot; missing
+FAIL ImageBitmap interface: existence and properties of interface prototype object assert_own_property: self does not have own property &quot;ImageBitmap&quot; expected property &quot;ImageBitmap&quot; missing
+FAIL ImageBitmap interface: existence and properties of interface prototype object's &quot;constructor&quot; property assert_own_property: self does not have own property &quot;ImageBitmap&quot; expected property &quot;ImageBitmap&quot; missing
+FAIL ImageBitmap interface: attribute width assert_own_property: self does not have own property &quot;ImageBitmap&quot; expected property &quot;ImageBitmap&quot; missing
+FAIL ImageBitmap interface: attribute height assert_own_property: self does not have own property &quot;ImageBitmap&quot; expected property &quot;ImageBitmap&quot; missing
+PASS MessageEvent interface: existence and properties of interface object 
+PASS MessageEvent interface object length 
+PASS MessageEvent interface object name 
+PASS MessageEvent interface: existence and properties of interface prototype object 
+PASS MessageEvent interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS MessageEvent interface: attribute data 
+PASS MessageEvent interface: attribute origin 
+PASS MessageEvent interface: attribute lastEventId 
+PASS MessageEvent interface: attribute source 
+PASS MessageEvent interface: attribute ports 
+FAIL MessageEvent interface: operation initMessageEvent(DOMString,boolean,boolean,any,DOMString,DOMString,[object Object],[object Object],MessagePort) assert_equals: property has wrong .length expected 8 but got 0
+PASS EventSource interface: existence and properties of interface object 
+PASS EventSource interface object length 
+PASS EventSource interface object name 
+PASS EventSource interface: existence and properties of interface prototype object 
+PASS EventSource interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS EventSource interface: attribute url 
+PASS EventSource interface: attribute withCredentials 
+PASS EventSource interface: constant CONNECTING on interface object 
+PASS EventSource interface: constant CONNECTING on interface prototype object 
+PASS EventSource interface: constant OPEN on interface object 
+PASS EventSource interface: constant OPEN on interface prototype object 
+PASS EventSource interface: constant CLOSED on interface object 
+PASS EventSource interface: constant CLOSED on interface prototype object 
+PASS EventSource interface: attribute readyState 
+PASS EventSource interface: attribute onopen 
+PASS EventSource interface: attribute onmessage 
+PASS EventSource interface: attribute onerror 
+PASS EventSource interface: operation close() 
+PASS WebSocket interface: existence and properties of interface object 
+PASS WebSocket interface object length 
+PASS WebSocket interface object name 
+PASS WebSocket interface: existence and properties of interface prototype object 
+PASS WebSocket interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS WebSocket interface: attribute url 
+PASS WebSocket interface: constant CONNECTING on interface object 
+PASS WebSocket interface: constant CONNECTING on interface prototype object 
+PASS WebSocket interface: constant OPEN on interface object 
+PASS WebSocket interface: constant OPEN on interface prototype object 
+PASS WebSocket interface: constant CLOSING on interface object 
+PASS WebSocket interface: constant CLOSING on interface prototype object 
+PASS WebSocket interface: constant CLOSED on interface object 
+PASS WebSocket interface: constant CLOSED on interface prototype object 
+PASS WebSocket interface: attribute readyState 
+PASS WebSocket interface: attribute bufferedAmount 
+PASS WebSocket interface: attribute onopen 
+PASS WebSocket interface: attribute onerror 
+PASS WebSocket interface: attribute onclose 
+PASS WebSocket interface: attribute extensions 
+PASS WebSocket interface: attribute protocol 
+PASS WebSocket interface: operation close(unsigned short,USVString) 
+PASS WebSocket interface: attribute onmessage 
+PASS WebSocket interface: attribute binaryType 
+PASS WebSocket interface: operation send(USVString) 
+PASS WebSocket interface: operation send(Blob) 
+PASS WebSocket interface: operation send(ArrayBuffer) 
+PASS WebSocket interface: operation send(ArrayBufferView) 
+PASS WebSocket must be primary interface of new WebSocket(&quot;ws://foo&quot;) 
+PASS Stringification of new WebSocket(&quot;ws://foo&quot;) 
+PASS WebSocket interface: new WebSocket(&quot;ws://foo&quot;) must inherit property &quot;url&quot; with the proper type (0) 
+PASS WebSocket interface: new WebSocket(&quot;ws://foo&quot;) must inherit property &quot;CONNECTING&quot; with the proper type (1) 
+PASS WebSocket interface: new WebSocket(&quot;ws://foo&quot;) must inherit property &quot;OPEN&quot; with the proper type (2) 
+PASS WebSocket interface: new WebSocket(&quot;ws://foo&quot;) must inherit property &quot;CLOSING&quot; with the proper type (3) 
+PASS WebSocket interface: new WebSocket(&quot;ws://foo&quot;) must inherit property &quot;CLOSED&quot; with the proper type (4) 
+PASS WebSocket interface: new WebSocket(&quot;ws://foo&quot;) must inherit property &quot;readyState&quot; with the proper type (5) 
+PASS WebSocket interface: new WebSocket(&quot;ws://foo&quot;) must inherit property &quot;bufferedAmount&quot; with the proper type (6) 
+PASS WebSocket interface: new WebSocket(&quot;ws://foo&quot;) must inherit property &quot;onopen&quot; with the proper type (7) 
+PASS WebSocket interface: new WebSocket(&quot;ws://foo&quot;) must inherit property &quot;onerror&quot; with the proper type (8) 
+PASS WebSocket interface: new WebSocket(&quot;ws://foo&quot;) must inherit property &quot;onclose&quot; with the proper type (9) 
+PASS WebSocket interface: new WebSocket(&quot;ws://foo&quot;) must inherit property &quot;extensions&quot; with the proper type (10) 
+PASS WebSocket interface: new WebSocket(&quot;ws://foo&quot;) must inherit property &quot;protocol&quot; with the proper type (11) 
+PASS WebSocket interface: new WebSocket(&quot;ws://foo&quot;) must inherit property &quot;close&quot; with the proper type (12) 
+PASS WebSocket interface: calling close(unsigned short,USVString) on new WebSocket(&quot;ws://foo&quot;) with too few arguments must throw TypeError 
+PASS WebSocket interface: new WebSocket(&quot;ws://foo&quot;) must inherit property &quot;onmessage&quot; with the proper type (13) 
+PASS WebSocket interface: new WebSocket(&quot;ws://foo&quot;) must inherit property &quot;binaryType&quot; with the proper type (14) 
+PASS WebSocket interface: new WebSocket(&quot;ws://foo&quot;) must inherit property &quot;send&quot; with the proper type (15) 
+PASS WebSocket interface: calling send(USVString) on new WebSocket(&quot;ws://foo&quot;) with too few arguments must throw TypeError 
+PASS WebSocket interface: new WebSocket(&quot;ws://foo&quot;) must inherit property &quot;send&quot; with the proper type (16) 
+PASS WebSocket interface: calling send(Blob) on new WebSocket(&quot;ws://foo&quot;) with too few arguments must throw TypeError 
+PASS WebSocket interface: new WebSocket(&quot;ws://foo&quot;) must inherit property &quot;send&quot; with the proper type (17) 
+PASS WebSocket interface: calling send(ArrayBuffer) on new WebSocket(&quot;ws://foo&quot;) with too few arguments must throw TypeError 
+PASS WebSocket interface: new WebSocket(&quot;ws://foo&quot;) must inherit property &quot;send&quot; with the proper type (18) 
+PASS WebSocket interface: calling send(ArrayBufferView) on new WebSocket(&quot;ws://foo&quot;) with too few arguments must throw TypeError 
+PASS EventTarget interface: new WebSocket(&quot;ws://foo&quot;) must inherit property &quot;addEventListener&quot; with the proper type (0) 
+FAIL EventTarget interface: calling addEventListener(DOMString,EventListener,boolean) on new WebSocket(&quot;ws://foo&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS EventTarget interface: new WebSocket(&quot;ws://foo&quot;) must inherit property &quot;removeEventListener&quot; with the proper type (1) 
+FAIL EventTarget interface: calling removeEventListener(DOMString,EventListener,boolean) on new WebSocket(&quot;ws://foo&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS EventTarget interface: new WebSocket(&quot;ws://foo&quot;) must inherit property &quot;dispatchEvent&quot; with the proper type (2) 
+PASS EventTarget interface: calling dispatchEvent(Event) on new WebSocket(&quot;ws://foo&quot;) with too few arguments must throw TypeError 
+PASS CloseEvent interface: existence and properties of interface object 
+PASS CloseEvent interface object length 
+PASS CloseEvent interface object name 
+PASS CloseEvent interface: existence and properties of interface prototype object 
+PASS CloseEvent interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS CloseEvent interface: attribute wasClean 
+PASS CloseEvent interface: attribute code 
+PASS CloseEvent interface: attribute reason 
+PASS CloseEvent must be primary interface of new CloseEvent(&quot;close&quot;) 
+PASS Stringification of new CloseEvent(&quot;close&quot;) 
+PASS CloseEvent interface: new CloseEvent(&quot;close&quot;) must inherit property &quot;wasClean&quot; with the proper type (0) 
+PASS CloseEvent interface: new CloseEvent(&quot;close&quot;) must inherit property &quot;code&quot; with the proper type (1) 
+PASS CloseEvent interface: new CloseEvent(&quot;close&quot;) must inherit property &quot;reason&quot; with the proper type (2) 
+PASS Event interface: new CloseEvent(&quot;close&quot;) must inherit property &quot;type&quot; with the proper type (0) 
+PASS Event interface: new CloseEvent(&quot;close&quot;) must inherit property &quot;target&quot; with the proper type (1) 
+PASS Event interface: new CloseEvent(&quot;close&quot;) must inherit property &quot;currentTarget&quot; with the proper type (2) 
+PASS Event interface: new CloseEvent(&quot;close&quot;) must inherit property &quot;NONE&quot; with the proper type (3) 
+PASS Event interface: new CloseEvent(&quot;close&quot;) must inherit property &quot;CAPTURING_PHASE&quot; with the proper type (4) 
+PASS Event interface: new CloseEvent(&quot;close&quot;) must inherit property &quot;AT_TARGET&quot; with the proper type (5) 
+PASS Event interface: new CloseEvent(&quot;close&quot;) must inherit property &quot;BUBBLING_PHASE&quot; with the proper type (6) 
+PASS Event interface: new CloseEvent(&quot;close&quot;) must inherit property &quot;eventPhase&quot; with the proper type (7) 
+PASS Event interface: new CloseEvent(&quot;close&quot;) must inherit property &quot;stopPropagation&quot; with the proper type (8) 
+PASS Event interface: new CloseEvent(&quot;close&quot;) must inherit property &quot;stopImmediatePropagation&quot; with the proper type (9) 
+PASS Event interface: new CloseEvent(&quot;close&quot;) must inherit property &quot;bubbles&quot; with the proper type (10) 
+PASS Event interface: new CloseEvent(&quot;close&quot;) must inherit property &quot;cancelable&quot; with the proper type (11) 
+PASS Event interface: new CloseEvent(&quot;close&quot;) must inherit property &quot;preventDefault&quot; with the proper type (12) 
+PASS Event interface: new CloseEvent(&quot;close&quot;) must inherit property &quot;defaultPrevented&quot; with the proper type (13) 
+PASS Event interface: new CloseEvent(&quot;close&quot;) must have own property &quot;isTrusted&quot; 
+PASS Event interface: new CloseEvent(&quot;close&quot;) must inherit property &quot;timeStamp&quot; with the proper type (15) 
+PASS Event interface: new CloseEvent(&quot;close&quot;) must inherit property &quot;initEvent&quot; with the proper type (16) 
+FAIL Event interface: calling initEvent(DOMString,boolean,boolean) on new CloseEvent(&quot;close&quot;) with too few arguments must throw TypeError assert_throws: Called with 0 arguments function &quot;function () {
+            fn.apply(obj, args);
+        }&quot; did not throw
+PASS MessageChannel interface: existence and properties of interface object 
+PASS MessageChannel interface object length 
+PASS MessageChannel interface object name 
+PASS MessageChannel interface: existence and properties of interface prototype object 
+PASS MessageChannel interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS MessageChannel interface: attribute port1 
+PASS MessageChannel interface: attribute port2 
+PASS MessagePort interface: existence and properties of interface object 
+PASS MessagePort interface object length 
+PASS MessagePort interface object name 
+PASS MessagePort interface: existence and properties of interface prototype object 
+PASS MessagePort interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS MessagePort interface: operation postMessage(any,[object Object]) 
+PASS MessagePort interface: operation start() 
+PASS MessagePort interface: operation close() 
+PASS MessagePort interface: attribute onmessage 
+FAIL PortCollection interface: existence and properties of interface object assert_own_property: self does not have own property &quot;PortCollection&quot; expected property &quot;PortCollection&quot; missing
+FAIL PortCollection interface object length assert_own_property: self does not have own property &quot;PortCollection&quot; expected property &quot;PortCollection&quot; missing
+FAIL PortCollection interface object name assert_own_property: self does not have own property &quot;PortCollection&quot; expected property &quot;PortCollection&quot; missing
+FAIL PortCollection interface: existence and properties of interface prototype object assert_own_property: self does not have own property &quot;PortCollection&quot; expected property &quot;PortCollection&quot; missing
+FAIL PortCollection interface: existence and properties of interface prototype object's &quot;constructor&quot; property assert_own_property: self does not have own property &quot;PortCollection&quot; expected property &quot;PortCollection&quot; missing
+FAIL PortCollection interface: operation add(MessagePort) assert_own_property: self does not have own property &quot;PortCollection&quot; expected property &quot;PortCollection&quot; missing
+FAIL PortCollection interface: operation remove(MessagePort) assert_own_property: self does not have own property &quot;PortCollection&quot; expected property &quot;PortCollection&quot; missing
+FAIL PortCollection interface: operation clear() assert_own_property: self does not have own property &quot;PortCollection&quot; expected property &quot;PortCollection&quot; missing
+FAIL PortCollection interface: operation iterate(PortCollectionCallback) assert_own_property: self does not have own property &quot;PortCollection&quot; expected property &quot;PortCollection&quot; missing
+FAIL BroadcastChannel interface: existence and properties of interface object assert_own_property: self does not have own property &quot;BroadcastChannel&quot; expected property &quot;BroadcastChannel&quot; missing
+FAIL BroadcastChannel interface object length assert_own_property: self does not have own property &quot;BroadcastChannel&quot; expected property &quot;BroadcastChannel&quot; missing
+FAIL BroadcastChannel interface object name assert_own_property: self does not have own property &quot;BroadcastChannel&quot; expected property &quot;BroadcastChannel&quot; missing
+FAIL BroadcastChannel interface: existence and properties of interface prototype object assert_own_property: self does not have own property &quot;BroadcastChannel&quot; expected property &quot;BroadcastChannel&quot; missing
+FAIL BroadcastChannel interface: existence and properties of interface prototype object's &quot;constructor&quot; property assert_own_property: self does not have own property &quot;BroadcastChannel&quot; expected property &quot;BroadcastChannel&quot; missing
+FAIL BroadcastChannel interface: attribute name assert_own_property: self does not have own property &quot;BroadcastChannel&quot; expected property &quot;BroadcastChannel&quot; missing
+FAIL BroadcastChannel interface: operation postMessage(any) assert_own_property: self does not have own property &quot;BroadcastChannel&quot; expected property &quot;BroadcastChannel&quot; missing
+FAIL BroadcastChannel interface: operation close() assert_own_property: self does not have own property &quot;BroadcastChannel&quot; expected property &quot;BroadcastChannel&quot; missing
+FAIL BroadcastChannel interface: attribute onmessage assert_own_property: self does not have own property &quot;BroadcastChannel&quot; expected property &quot;BroadcastChannel&quot; missing
+PASS WorkerGlobalScope interface: existence and properties of interface object 
+PASS DedicatedWorkerGlobalScope interface: existence and properties of interface object 
+PASS SharedWorkerGlobalScope interface: existence and properties of interface object 
+PASS Worker interface: existence and properties of interface object 
+PASS Worker interface object length 
+PASS Worker interface object name 
+PASS Worker interface: existence and properties of interface prototype object 
+PASS Worker interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS Worker interface: operation terminate() 
+PASS Worker interface: operation postMessage(any,[object Object]) 
+PASS Worker interface: attribute onmessage 
+PASS Worker interface: attribute onerror 
+FAIL SharedWorker interface: existence and properties of interface object assert_own_property: self does not have own property &quot;SharedWorker&quot; expected property &quot;SharedWorker&quot; missing
+FAIL SharedWorker interface object length assert_own_property: self does not have own property &quot;SharedWorker&quot; expected property &quot;SharedWorker&quot; missing
+FAIL SharedWorker interface object name assert_own_property: self does not have own property &quot;SharedWorker&quot; expected property &quot;SharedWorker&quot; missing
+FAIL SharedWorker interface: existence and properties of interface prototype object assert_own_property: self does not have own property &quot;SharedWorker&quot; expected property &quot;SharedWorker&quot; missing
+FAIL SharedWorker interface: existence and properties of interface prototype object's &quot;constructor&quot; property assert_own_property: self does not have own property &quot;SharedWorker&quot; expected property &quot;SharedWorker&quot; missing
+FAIL SharedWorker interface: attribute port assert_own_property: self does not have own property &quot;SharedWorker&quot; expected property &quot;SharedWorker&quot; missing
+FAIL SharedWorker interface: attribute onerror assert_own_property: self does not have own property &quot;SharedWorker&quot; expected property &quot;SharedWorker&quot; missing
+PASS WorkerNavigator interface: existence and properties of interface object 
+PASS WorkerLocation interface: existence and properties of interface object 
+PASS Storage interface: existence and properties of interface object 
+PASS Storage interface object length 
+PASS Storage interface object name 
+PASS Storage interface: existence and properties of interface prototype object 
+PASS Storage interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS Storage interface: attribute length 
+PASS Storage interface: operation key(unsigned long) 
+PASS Storage interface: operation getItem(DOMString) 
+PASS Storage interface: operation setItem(DOMString,DOMString) 
+PASS Storage interface: operation removeItem(DOMString) 
+PASS Storage interface: operation clear() 
+PASS StorageEvent interface: existence and properties of interface object 
+PASS StorageEvent interface object length 
+PASS StorageEvent interface object name 
+PASS StorageEvent interface: existence and properties of interface prototype object 
+PASS StorageEvent interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS StorageEvent interface: attribute key 
+PASS StorageEvent interface: attribute oldValue 
+PASS StorageEvent interface: attribute newValue 
+PASS StorageEvent interface: attribute url 
+PASS StorageEvent interface: attribute storageArea 
+PASS HTMLAppletElement interface: existence and properties of interface object 
+PASS HTMLAppletElement interface object length 
+PASS HTMLAppletElement interface object name 
+PASS HTMLAppletElement interface: existence and properties of interface prototype object 
+PASS HTMLAppletElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLAppletElement interface: attribute align 
+PASS HTMLAppletElement interface: attribute alt 
+PASS HTMLAppletElement interface: attribute archive 
+PASS HTMLAppletElement interface: attribute code 
+PASS HTMLAppletElement interface: attribute codeBase 
+PASS HTMLAppletElement interface: attribute height 
+PASS HTMLAppletElement interface: attribute hspace 
+PASS HTMLAppletElement interface: attribute name 
+PASS HTMLAppletElement interface: attribute object 
+PASS HTMLAppletElement interface: attribute vspace 
+PASS HTMLAppletElement interface: attribute width 
+PASS HTMLAppletElement must be primary interface of document.createElement(&quot;applet&quot;) 
+PASS Stringification of document.createElement(&quot;applet&quot;) 
+PASS HTMLAppletElement interface: document.createElement(&quot;applet&quot;) must inherit property &quot;align&quot; with the proper type (0) 
+PASS HTMLAppletElement interface: document.createElement(&quot;applet&quot;) must inherit property &quot;alt&quot; with the proper type (1) 
+PASS HTMLAppletElement interface: document.createElement(&quot;applet&quot;) must inherit property &quot;archive&quot; with the proper type (2) 
+PASS HTMLAppletElement interface: document.createElement(&quot;applet&quot;) must inherit property &quot;code&quot; with the proper type (3) 
+PASS HTMLAppletElement interface: document.createElement(&quot;applet&quot;) must inherit property &quot;codeBase&quot; with the proper type (4) 
+PASS HTMLAppletElement interface: document.createElement(&quot;applet&quot;) must inherit property &quot;height&quot; with the proper type (5) 
+FAIL HTMLAppletElement interface: document.createElement(&quot;applet&quot;) must inherit property &quot;hspace&quot; with the proper type (6) assert_equals: expected &quot;number&quot; but got &quot;string&quot;
+PASS HTMLAppletElement interface: document.createElement(&quot;applet&quot;) must inherit property &quot;name&quot; with the proper type (7) 
+PASS HTMLAppletElement interface: document.createElement(&quot;applet&quot;) must inherit property &quot;object&quot; with the proper type (8) 
+FAIL HTMLAppletElement interface: document.createElement(&quot;applet&quot;) must inherit property &quot;vspace&quot; with the proper type (9) assert_equals: expected &quot;number&quot; but got &quot;string&quot;
+PASS HTMLAppletElement interface: document.createElement(&quot;applet&quot;) must inherit property &quot;width&quot; with the proper type (10) 
+PASS HTMLMarqueeElement interface: existence and properties of interface object 
+PASS HTMLMarqueeElement interface object length 
+PASS HTMLMarqueeElement interface object name 
+PASS HTMLMarqueeElement interface: existence and properties of interface prototype object 
+PASS HTMLMarqueeElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLMarqueeElement interface: attribute behavior 
+PASS HTMLMarqueeElement interface: attribute bgColor 
+PASS HTMLMarqueeElement interface: attribute direction 
+PASS HTMLMarqueeElement interface: attribute height 
+PASS HTMLMarqueeElement interface: attribute hspace 
+PASS HTMLMarqueeElement interface: attribute loop 
+PASS HTMLMarqueeElement interface: attribute scrollAmount 
+PASS HTMLMarqueeElement interface: attribute scrollDelay 
+PASS HTMLMarqueeElement interface: attribute trueSpeed 
+PASS HTMLMarqueeElement interface: attribute vspace 
+PASS HTMLMarqueeElement interface: attribute width 
+FAIL HTMLMarqueeElement interface: attribute onbounce assert_true: The prototype object must have a property &quot;onbounce&quot; expected true got false
+FAIL HTMLMarqueeElement interface: attribute onfinish assert_true: The prototype object must have a property &quot;onfinish&quot; expected true got false
+FAIL HTMLMarqueeElement interface: attribute onstart assert_true: The prototype object must have a property &quot;onstart&quot; expected true got false
+PASS HTMLMarqueeElement interface: operation start() 
+PASS HTMLMarqueeElement interface: operation stop() 
+PASS HTMLMarqueeElement must be primary interface of document.createElement(&quot;marquee&quot;) 
+PASS Stringification of document.createElement(&quot;marquee&quot;) 
+PASS HTMLMarqueeElement interface: document.createElement(&quot;marquee&quot;) must inherit property &quot;behavior&quot; with the proper type (0) 
+PASS HTMLMarqueeElement interface: document.createElement(&quot;marquee&quot;) must inherit property &quot;bgColor&quot; with the proper type (1) 
+PASS HTMLMarqueeElement interface: document.createElement(&quot;marquee&quot;) must inherit property &quot;direction&quot; with the proper type (2) 
+PASS HTMLMarqueeElement interface: document.createElement(&quot;marquee&quot;) must inherit property &quot;height&quot; with the proper type (3) 
+PASS HTMLMarqueeElement interface: document.createElement(&quot;marquee&quot;) must inherit property &quot;hspace&quot; with the proper type (4) 
+PASS HTMLMarqueeElement interface: document.createElement(&quot;marquee&quot;) must inherit property &quot;loop&quot; with the proper type (5) 
+PASS HTMLMarqueeElement interface: document.createElement(&quot;marquee&quot;) must inherit property &quot;scrollAmount&quot; with the proper type (6) 
+PASS HTMLMarqueeElement interface: document.createElement(&quot;marquee&quot;) must inherit property &quot;scrollDelay&quot; with the proper type (7) 
+PASS HTMLMarqueeElement interface: document.createElement(&quot;marquee&quot;) must inherit property &quot;trueSpeed&quot; with the proper type (8) 
+PASS HTMLMarqueeElement interface: document.createElement(&quot;marquee&quot;) must inherit property &quot;vspace&quot; with the proper type (9) 
+PASS HTMLMarqueeElement interface: document.createElement(&quot;marquee&quot;) must inherit property &quot;width&quot; with the proper type (10) 
+FAIL HTMLMarqueeElement interface: document.createElement(&quot;marquee&quot;) must inherit property &quot;onbounce&quot; with the proper type (11) assert_inherits: property &quot;onbounce&quot; not found in prototype chain
+FAIL HTMLMarqueeElement interface: document.createElement(&quot;marquee&quot;) must inherit property &quot;onfinish&quot; with the proper type (12) assert_inherits: property &quot;onfinish&quot; not found in prototype chain
+FAIL HTMLMarqueeElement interface: document.createElement(&quot;marquee&quot;) must inherit property &quot;onstart&quot; with the proper type (13) assert_inherits: property &quot;onstart&quot; not found in prototype chain
+PASS HTMLMarqueeElement interface: document.createElement(&quot;marquee&quot;) must inherit property &quot;start&quot; with the proper type (14) 
+PASS HTMLMarqueeElement interface: document.createElement(&quot;marquee&quot;) must inherit property &quot;stop&quot; with the proper type (15) 
+PASS HTMLFrameSetElement interface: existence and properties of interface object 
+PASS HTMLFrameSetElement interface object length 
+PASS HTMLFrameSetElement interface object name 
+PASS HTMLFrameSetElement interface: existence and properties of interface prototype object 
+PASS HTMLFrameSetElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLFrameSetElement interface: attribute cols 
+PASS HTMLFrameSetElement interface: attribute rows 
+FAIL HTMLFrameSetElement interface: attribute onafterprint assert_true: The prototype object must have a property &quot;onafterprint&quot; expected true got false
+FAIL HTMLFrameSetElement interface: attribute onbeforeprint assert_true: The prototype object must have a property &quot;onbeforeprint&quot; expected true got false
+PASS HTMLFrameSetElement interface: attribute onbeforeunload 
+PASS HTMLFrameSetElement interface: attribute onhashchange 
+FAIL HTMLFrameSetElement interface: attribute onlanguagechange assert_true: The prototype object must have a property &quot;onlanguagechange&quot; expected true got false
+PASS HTMLFrameSetElement interface: attribute onmessage 
+PASS HTMLFrameSetElement interface: attribute onoffline 
+PASS HTMLFrameSetElement interface: attribute ononline 
+PASS HTMLFrameSetElement interface: attribute onpagehide 
+PASS HTMLFrameSetElement interface: attribute onpageshow 
+PASS HTMLFrameSetElement interface: attribute onpopstate 
+PASS HTMLFrameSetElement interface: attribute onstorage 
+PASS HTMLFrameSetElement interface: attribute onunload 
+PASS HTMLFrameSetElement must be primary interface of document.createElement(&quot;frameset&quot;) 
+PASS Stringification of document.createElement(&quot;frameset&quot;) 
+PASS HTMLFrameSetElement interface: document.createElement(&quot;frameset&quot;) must inherit property &quot;cols&quot; with the proper type (0) 
+PASS HTMLFrameSetElement interface: document.createElement(&quot;frameset&quot;) must inherit property &quot;rows&quot; with the proper type (1) 
+FAIL HTMLFrameSetElement interface: document.createElement(&quot;frameset&quot;) must inherit property &quot;onafterprint&quot; with the proper type (2) assert_inherits: property &quot;onafterprint&quot; not found in prototype chain
+FAIL HTMLFrameSetElement interface: document.createElement(&quot;frameset&quot;) must inherit property &quot;onbeforeprint&quot; with the proper type (3) assert_inherits: property &quot;onbeforeprint&quot; not found in prototype chain
+PASS HTMLFrameSetElement interface: document.createElement(&quot;frameset&quot;) must inherit property &quot;onbeforeunload&quot; with the proper type (4) 
+PASS HTMLFrameSetElement interface: document.createElement(&quot;frameset&quot;) must inherit property &quot;onhashchange&quot; with the proper type (5) 
+FAIL HTMLFrameSetElement interface: document.createElement(&quot;frameset&quot;) must inherit property &quot;onlanguagechange&quot; with the proper type (6) assert_inherits: property &quot;onlanguagechange&quot; not found in prototype chain
+PASS HTMLFrameSetElement interface: document.createElement(&quot;frameset&quot;) must inherit property &quot;onmessage&quot; with the proper type (7) 
+PASS HTMLFrameSetElement interface: document.createElement(&quot;frameset&quot;) must inherit property &quot;onoffline&quot; with the proper type (8) 
+PASS HTMLFrameSetElement interface: document.createElement(&quot;frameset&quot;) must inherit property &quot;ononline&quot; with the proper type (9) 
+PASS HTMLFrameSetElement interface: document.createElement(&quot;frameset&quot;) must inherit property &quot;onpagehide&quot; with the proper type (10) 
+PASS HTMLFrameSetElement interface: document.createElement(&quot;frameset&quot;) must inherit property &quot;onpageshow&quot; with the proper type (11) 
+PASS HTMLFrameSetElement interface: document.createElement(&quot;frameset&quot;) must inherit property &quot;onpopstate&quot; with the proper type (12) 
+PASS HTMLFrameSetElement interface: document.createElement(&quot;frameset&quot;) must inherit property &quot;onstorage&quot; with the proper type (13) 
+PASS HTMLFrameSetElement interface: document.createElement(&quot;frameset&quot;) must inherit property &quot;onunload&quot; with the proper type (14) 
+PASS HTMLFrameElement interface: existence and properties of interface object 
+PASS HTMLFrameElement interface object length 
+PASS HTMLFrameElement interface object name 
+PASS HTMLFrameElement interface: existence and properties of interface prototype object 
+PASS HTMLFrameElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLFrameElement interface: attribute name 
+PASS HTMLFrameElement interface: attribute scrolling 
+PASS HTMLFrameElement interface: attribute src 
+PASS HTMLFrameElement interface: attribute frameBorder 
+PASS HTMLFrameElement interface: attribute longDesc 
+PASS HTMLFrameElement interface: attribute noResize 
+PASS HTMLFrameElement interface: attribute contentDocument 
+PASS HTMLFrameElement interface: attribute contentWindow 
+PASS HTMLFrameElement interface: attribute marginHeight 
+PASS HTMLFrameElement interface: attribute marginWidth 
+PASS HTMLFrameElement must be primary interface of document.createElement(&quot;frame&quot;) 
+PASS Stringification of document.createElement(&quot;frame&quot;) 
+PASS HTMLFrameElement interface: document.createElement(&quot;frame&quot;) must inherit property &quot;name&quot; with the proper type (0) 
+PASS HTMLFrameElement interface: document.createElement(&quot;frame&quot;) must inherit property &quot;scrolling&quot; with the proper type (1) 
+PASS HTMLFrameElement interface: document.createElement(&quot;frame&quot;) must inherit property &quot;src&quot; with the proper type (2) 
+PASS HTMLFrameElement interface: document.createElement(&quot;frame&quot;) must inherit property &quot;frameBorder&quot; with the proper type (3) 
+PASS HTMLFrameElement interface: document.createElement(&quot;frame&quot;) must inherit property &quot;longDesc&quot; with the proper type (4) 
+PASS HTMLFrameElement interface: document.createElement(&quot;frame&quot;) must inherit property &quot;noResize&quot; with the proper type (5) 
+PASS HTMLFrameElement interface: document.createElement(&quot;frame&quot;) must inherit property &quot;contentDocument&quot; with the proper type (6) 
+PASS HTMLFrameElement interface: document.createElement(&quot;frame&quot;) must inherit property &quot;contentWindow&quot; with the proper type (7) 
+PASS HTMLFrameElement interface: document.createElement(&quot;frame&quot;) must inherit property &quot;marginHeight&quot; with the proper type (8) 
+PASS HTMLFrameElement interface: document.createElement(&quot;frame&quot;) must inherit property &quot;marginWidth&quot; with the proper type (9) 
+PASS HTMLDirectoryElement interface: existence and properties of interface object 
+PASS HTMLDirectoryElement interface object length 
+PASS HTMLDirectoryElement interface object name 
+PASS HTMLDirectoryElement interface: existence and properties of interface prototype object 
+PASS HTMLDirectoryElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLDirectoryElement interface: attribute compact 
+PASS HTMLDirectoryElement must be primary interface of document.createElement(&quot;dir&quot;) 
+PASS Stringification of document.createElement(&quot;dir&quot;) 
+PASS HTMLDirectoryElement interface: document.createElement(&quot;dir&quot;) must inherit property &quot;compact&quot; with the proper type (0) 
+PASS HTMLFontElement interface: existence and properties of interface object 
+PASS HTMLFontElement interface object length 
+PASS HTMLFontElement interface object name 
+PASS HTMLFontElement interface: existence and properties of interface prototype object 
+PASS HTMLFontElement interface: existence and properties of interface prototype object's &quot;constructor&quot; property 
+PASS HTMLFontElement interface: attribute color 
+PASS HTMLFontElement interface: attribute face 
+PASS HTMLFontElement interface: attribute size 
+PASS HTMLFontElement must be primary interface of document.createElement(&quot;font&quot;) 
+PASS Stringification of document.createElement(&quot;font&quot;) 
+PASS HTMLFontElement interface: document.createElement(&quot;font&quot;) must inherit property &quot;color&quot; with the proper type (0) 
+PASS HTMLFontElement interface: document.createElement(&quot;font&quot;) must inherit property &quot;face&quot; with the proper type (1) 
+PASS HTMLFontElement interface: document.createElement(&quot;font&quot;) must inherit property &quot;size&quot; with the proper type (2) 
+
</ins></span></pre></div>
<a id="branchessafari602branchLayoutTestsplatformmacimportedw3cwebplatformtestshtmldomreflectionformsexpectedtxt"></a>
<div class="addfile"><h4>Added: branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/dom/reflection-forms-expected.txt (0 => 204212)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/dom/reflection-forms-expected.txt                                (rev 0)
+++ branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/dom/reflection-forms-expected.txt        2016-08-06 01:19:14 UTC (rev 204212)
</span><span class="lines">@@ -0,0 +1,16855 @@
</span><ins>+Implementers looking to fix bugs might want to use the original version of this suite's test framework, which conveniently aggregates similar errors and only reports failures. This file is (part of) the authoritative conformance test suite, and is suitable for incorporation into automated test suites.
+
+(Note: missing tests for types tokenlist, settable tokenlist, limited double.)
+
+
+PASS form.title: typeof IDL attribute 
+PASS form.title: IDL get with DOM attribute unset 
+PASS form.title: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS form.title: setAttribute() to &quot;&quot; followed by IDL get 
+PASS form.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS form.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS form.title: setAttribute() to undefined followed by getAttribute() 
+PASS form.title: setAttribute() to undefined followed by IDL get 
+PASS form.title: setAttribute() to 7 followed by getAttribute() 
+PASS form.title: setAttribute() to 7 followed by IDL get 
+PASS form.title: setAttribute() to 1.5 followed by getAttribute() 
+PASS form.title: setAttribute() to 1.5 followed by IDL get 
+PASS form.title: setAttribute() to true followed by getAttribute() 
+PASS form.title: setAttribute() to true followed by IDL get 
+PASS form.title: setAttribute() to false followed by getAttribute() 
+PASS form.title: setAttribute() to false followed by IDL get 
+PASS form.title: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS form.title: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.title: setAttribute() to NaN followed by getAttribute() 
+PASS form.title: setAttribute() to NaN followed by IDL get 
+PASS form.title: setAttribute() to Infinity followed by getAttribute() 
+PASS form.title: setAttribute() to Infinity followed by IDL get 
+PASS form.title: setAttribute() to -Infinity followed by getAttribute() 
+PASS form.title: setAttribute() to -Infinity followed by IDL get 
+PASS form.title: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS form.title: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS form.title: setAttribute() to null followed by getAttribute() 
+PASS form.title: setAttribute() to null followed by IDL get 
+PASS form.title: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS form.title: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS form.title: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS form.title: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS form.title: IDL set to &quot;&quot; should not throw 
+PASS form.title: IDL set to &quot;&quot; followed by getAttribute() 
+PASS form.title: IDL set to &quot;&quot; followed by IDL get 
+PASS form.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS form.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS form.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS form.title: IDL set to undefined should not throw 
+PASS form.title: IDL set to undefined followed by getAttribute() 
+PASS form.title: IDL set to undefined followed by IDL get 
+PASS form.title: IDL set to 7 should not throw 
+PASS form.title: IDL set to 7 followed by getAttribute() 
+PASS form.title: IDL set to 7 followed by IDL get 
+PASS form.title: IDL set to 1.5 should not throw 
+PASS form.title: IDL set to 1.5 followed by getAttribute() 
+PASS form.title: IDL set to 1.5 followed by IDL get 
+PASS form.title: IDL set to true should not throw 
+PASS form.title: IDL set to true followed by getAttribute() 
+PASS form.title: IDL set to true followed by IDL get 
+PASS form.title: IDL set to false should not throw 
+PASS form.title: IDL set to false followed by getAttribute() 
+PASS form.title: IDL set to false followed by IDL get 
+PASS form.title: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS form.title: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS form.title: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.title: IDL set to NaN should not throw 
+PASS form.title: IDL set to NaN followed by getAttribute() 
+PASS form.title: IDL set to NaN followed by IDL get 
+PASS form.title: IDL set to Infinity should not throw 
+PASS form.title: IDL set to Infinity followed by getAttribute() 
+PASS form.title: IDL set to Infinity followed by IDL get 
+PASS form.title: IDL set to -Infinity should not throw 
+PASS form.title: IDL set to -Infinity followed by getAttribute() 
+PASS form.title: IDL set to -Infinity followed by IDL get 
+PASS form.title: IDL set to &quot;\0&quot; should not throw 
+PASS form.title: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS form.title: IDL set to &quot;\0&quot; followed by IDL get 
+PASS form.title: IDL set to null should not throw 
+PASS form.title: IDL set to null followed by getAttribute() 
+PASS form.title: IDL set to null followed by IDL get 
+PASS form.title: IDL set to object &quot;test-toString&quot; should not throw 
+PASS form.title: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS form.title: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS form.title: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS form.title: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS form.title: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS form.lang: typeof IDL attribute 
+PASS form.lang: IDL get with DOM attribute unset 
+PASS form.lang: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS form.lang: setAttribute() to &quot;&quot; followed by IDL get 
+PASS form.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS form.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS form.lang: setAttribute() to undefined followed by getAttribute() 
+PASS form.lang: setAttribute() to undefined followed by IDL get 
+PASS form.lang: setAttribute() to 7 followed by getAttribute() 
+PASS form.lang: setAttribute() to 7 followed by IDL get 
+PASS form.lang: setAttribute() to 1.5 followed by getAttribute() 
+PASS form.lang: setAttribute() to 1.5 followed by IDL get 
+PASS form.lang: setAttribute() to true followed by getAttribute() 
+PASS form.lang: setAttribute() to true followed by IDL get 
+PASS form.lang: setAttribute() to false followed by getAttribute() 
+PASS form.lang: setAttribute() to false followed by IDL get 
+PASS form.lang: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS form.lang: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.lang: setAttribute() to NaN followed by getAttribute() 
+PASS form.lang: setAttribute() to NaN followed by IDL get 
+PASS form.lang: setAttribute() to Infinity followed by getAttribute() 
+PASS form.lang: setAttribute() to Infinity followed by IDL get 
+PASS form.lang: setAttribute() to -Infinity followed by getAttribute() 
+PASS form.lang: setAttribute() to -Infinity followed by IDL get 
+PASS form.lang: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS form.lang: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS form.lang: setAttribute() to null followed by getAttribute() 
+PASS form.lang: setAttribute() to null followed by IDL get 
+PASS form.lang: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS form.lang: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS form.lang: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS form.lang: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS form.lang: IDL set to &quot;&quot; should not throw 
+PASS form.lang: IDL set to &quot;&quot; followed by getAttribute() 
+PASS form.lang: IDL set to &quot;&quot; followed by IDL get 
+PASS form.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS form.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS form.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS form.lang: IDL set to undefined should not throw 
+PASS form.lang: IDL set to undefined followed by getAttribute() 
+PASS form.lang: IDL set to undefined followed by IDL get 
+PASS form.lang: IDL set to 7 should not throw 
+PASS form.lang: IDL set to 7 followed by getAttribute() 
+PASS form.lang: IDL set to 7 followed by IDL get 
+PASS form.lang: IDL set to 1.5 should not throw 
+PASS form.lang: IDL set to 1.5 followed by getAttribute() 
+PASS form.lang: IDL set to 1.5 followed by IDL get 
+PASS form.lang: IDL set to true should not throw 
+PASS form.lang: IDL set to true followed by getAttribute() 
+PASS form.lang: IDL set to true followed by IDL get 
+PASS form.lang: IDL set to false should not throw 
+PASS form.lang: IDL set to false followed by getAttribute() 
+PASS form.lang: IDL set to false followed by IDL get 
+PASS form.lang: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS form.lang: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS form.lang: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.lang: IDL set to NaN should not throw 
+PASS form.lang: IDL set to NaN followed by getAttribute() 
+PASS form.lang: IDL set to NaN followed by IDL get 
+PASS form.lang: IDL set to Infinity should not throw 
+PASS form.lang: IDL set to Infinity followed by getAttribute() 
+PASS form.lang: IDL set to Infinity followed by IDL get 
+PASS form.lang: IDL set to -Infinity should not throw 
+PASS form.lang: IDL set to -Infinity followed by getAttribute() 
+PASS form.lang: IDL set to -Infinity followed by IDL get 
+PASS form.lang: IDL set to &quot;\0&quot; should not throw 
+PASS form.lang: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS form.lang: IDL set to &quot;\0&quot; followed by IDL get 
+PASS form.lang: IDL set to null should not throw 
+PASS form.lang: IDL set to null followed by getAttribute() 
+PASS form.lang: IDL set to null followed by IDL get 
+PASS form.lang: IDL set to object &quot;test-toString&quot; should not throw 
+PASS form.lang: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS form.lang: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS form.lang: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS form.lang: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS form.lang: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS form.dir: typeof IDL attribute 
+PASS form.dir: IDL get with DOM attribute unset 
+PASS form.dir: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS form.dir: setAttribute() to &quot;&quot; followed by IDL get 
+PASS form.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS form.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS form.dir: setAttribute() to undefined followed by getAttribute() 
+PASS form.dir: setAttribute() to undefined followed by IDL get 
+PASS form.dir: setAttribute() to 7 followed by getAttribute() 
+PASS form.dir: setAttribute() to 7 followed by IDL get 
+PASS form.dir: setAttribute() to 1.5 followed by getAttribute() 
+PASS form.dir: setAttribute() to 1.5 followed by IDL get 
+PASS form.dir: setAttribute() to true followed by getAttribute() 
+PASS form.dir: setAttribute() to true followed by IDL get 
+PASS form.dir: setAttribute() to false followed by getAttribute() 
+PASS form.dir: setAttribute() to false followed by IDL get 
+PASS form.dir: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS form.dir: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.dir: setAttribute() to NaN followed by getAttribute() 
+PASS form.dir: setAttribute() to NaN followed by IDL get 
+PASS form.dir: setAttribute() to Infinity followed by getAttribute() 
+PASS form.dir: setAttribute() to Infinity followed by IDL get 
+PASS form.dir: setAttribute() to -Infinity followed by getAttribute() 
+PASS form.dir: setAttribute() to -Infinity followed by IDL get 
+PASS form.dir: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS form.dir: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS form.dir: setAttribute() to null followed by getAttribute() 
+PASS form.dir: setAttribute() to null followed by IDL get 
+PASS form.dir: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS form.dir: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS form.dir: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS form.dir: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS form.dir: setAttribute() to &quot;ltr&quot; followed by getAttribute() 
+PASS form.dir: setAttribute() to &quot;ltr&quot; followed by IDL get 
+PASS form.dir: setAttribute() to &quot;xltr&quot; followed by getAttribute() 
+PASS form.dir: setAttribute() to &quot;xltr&quot; followed by IDL get 
+PASS form.dir: setAttribute() to &quot;ltr\0&quot; followed by getAttribute() 
+PASS form.dir: setAttribute() to &quot;ltr\0&quot; followed by IDL get 
+PASS form.dir: setAttribute() to &quot;tr&quot; followed by getAttribute() 
+PASS form.dir: setAttribute() to &quot;tr&quot; followed by IDL get 
+PASS form.dir: setAttribute() to &quot;LTR&quot; followed by getAttribute() 
+PASS form.dir: setAttribute() to &quot;LTR&quot; followed by IDL get 
+PASS form.dir: setAttribute() to &quot;rtl&quot; followed by getAttribute() 
+PASS form.dir: setAttribute() to &quot;rtl&quot; followed by IDL get 
+PASS form.dir: setAttribute() to &quot;xrtl&quot; followed by getAttribute() 
+PASS form.dir: setAttribute() to &quot;xrtl&quot; followed by IDL get 
+PASS form.dir: setAttribute() to &quot;rtl\0&quot; followed by getAttribute() 
+PASS form.dir: setAttribute() to &quot;rtl\0&quot; followed by IDL get 
+PASS form.dir: setAttribute() to &quot;tl&quot; followed by getAttribute() 
+PASS form.dir: setAttribute() to &quot;tl&quot; followed by IDL get 
+PASS form.dir: setAttribute() to &quot;RTL&quot; followed by getAttribute() 
+PASS form.dir: setAttribute() to &quot;RTL&quot; followed by IDL get 
+PASS form.dir: setAttribute() to &quot;auto&quot; followed by getAttribute() 
+PASS form.dir: setAttribute() to &quot;auto&quot; followed by IDL get 
+PASS form.dir: setAttribute() to &quot;xauto&quot; followed by getAttribute() 
+PASS form.dir: setAttribute() to &quot;xauto&quot; followed by IDL get 
+PASS form.dir: setAttribute() to &quot;auto\0&quot; followed by getAttribute() 
+PASS form.dir: setAttribute() to &quot;auto\0&quot; followed by IDL get 
+PASS form.dir: setAttribute() to &quot;uto&quot; followed by getAttribute() 
+PASS form.dir: setAttribute() to &quot;uto&quot; followed by IDL get 
+PASS form.dir: setAttribute() to &quot;AUTO&quot; followed by getAttribute() 
+PASS form.dir: setAttribute() to &quot;AUTO&quot; followed by IDL get 
+PASS form.dir: IDL set to &quot;&quot; should not throw 
+PASS form.dir: IDL set to &quot;&quot; followed by getAttribute() 
+PASS form.dir: IDL set to &quot;&quot; followed by IDL get 
+PASS form.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS form.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS form.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS form.dir: IDL set to undefined should not throw 
+PASS form.dir: IDL set to undefined followed by getAttribute() 
+PASS form.dir: IDL set to undefined followed by IDL get 
+PASS form.dir: IDL set to 7 should not throw 
+PASS form.dir: IDL set to 7 followed by getAttribute() 
+PASS form.dir: IDL set to 7 followed by IDL get 
+PASS form.dir: IDL set to 1.5 should not throw 
+PASS form.dir: IDL set to 1.5 followed by getAttribute() 
+PASS form.dir: IDL set to 1.5 followed by IDL get 
+PASS form.dir: IDL set to true should not throw 
+PASS form.dir: IDL set to true followed by getAttribute() 
+PASS form.dir: IDL set to true followed by IDL get 
+PASS form.dir: IDL set to false should not throw 
+PASS form.dir: IDL set to false followed by getAttribute() 
+PASS form.dir: IDL set to false followed by IDL get 
+PASS form.dir: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS form.dir: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS form.dir: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.dir: IDL set to NaN should not throw 
+PASS form.dir: IDL set to NaN followed by getAttribute() 
+PASS form.dir: IDL set to NaN followed by IDL get 
+PASS form.dir: IDL set to Infinity should not throw 
+PASS form.dir: IDL set to Infinity followed by getAttribute() 
+PASS form.dir: IDL set to Infinity followed by IDL get 
+PASS form.dir: IDL set to -Infinity should not throw 
+PASS form.dir: IDL set to -Infinity followed by getAttribute() 
+PASS form.dir: IDL set to -Infinity followed by IDL get 
+PASS form.dir: IDL set to &quot;\0&quot; should not throw 
+PASS form.dir: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS form.dir: IDL set to &quot;\0&quot; followed by IDL get 
+PASS form.dir: IDL set to null should not throw 
+PASS form.dir: IDL set to null followed by IDL get 
+PASS form.dir: IDL set to object &quot;test-toString&quot; should not throw 
+PASS form.dir: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS form.dir: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS form.dir: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS form.dir: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS form.dir: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS form.dir: IDL set to &quot;ltr&quot; should not throw 
+PASS form.dir: IDL set to &quot;ltr&quot; followed by getAttribute() 
+PASS form.dir: IDL set to &quot;ltr&quot; followed by IDL get 
+PASS form.dir: IDL set to &quot;xltr&quot; should not throw 
+PASS form.dir: IDL set to &quot;xltr&quot; followed by getAttribute() 
+PASS form.dir: IDL set to &quot;xltr&quot; followed by IDL get 
+PASS form.dir: IDL set to &quot;ltr\0&quot; should not throw 
+PASS form.dir: IDL set to &quot;ltr\0&quot; followed by getAttribute() 
+PASS form.dir: IDL set to &quot;ltr\0&quot; followed by IDL get 
+PASS form.dir: IDL set to &quot;tr&quot; should not throw 
+PASS form.dir: IDL set to &quot;tr&quot; followed by getAttribute() 
+PASS form.dir: IDL set to &quot;tr&quot; followed by IDL get 
+PASS form.dir: IDL set to &quot;LTR&quot; should not throw 
+PASS form.dir: IDL set to &quot;LTR&quot; followed by getAttribute() 
+PASS form.dir: IDL set to &quot;LTR&quot; followed by IDL get 
+PASS form.dir: IDL set to &quot;rtl&quot; should not throw 
+PASS form.dir: IDL set to &quot;rtl&quot; followed by getAttribute() 
+PASS form.dir: IDL set to &quot;rtl&quot; followed by IDL get 
+PASS form.dir: IDL set to &quot;xrtl&quot; should not throw 
+PASS form.dir: IDL set to &quot;xrtl&quot; followed by getAttribute() 
+PASS form.dir: IDL set to &quot;xrtl&quot; followed by IDL get 
+PASS form.dir: IDL set to &quot;rtl\0&quot; should not throw 
+PASS form.dir: IDL set to &quot;rtl\0&quot; followed by getAttribute() 
+PASS form.dir: IDL set to &quot;rtl\0&quot; followed by IDL get 
+PASS form.dir: IDL set to &quot;tl&quot; should not throw 
+PASS form.dir: IDL set to &quot;tl&quot; followed by getAttribute() 
+PASS form.dir: IDL set to &quot;tl&quot; followed by IDL get 
+PASS form.dir: IDL set to &quot;RTL&quot; should not throw 
+PASS form.dir: IDL set to &quot;RTL&quot; followed by getAttribute() 
+PASS form.dir: IDL set to &quot;RTL&quot; followed by IDL get 
+PASS form.dir: IDL set to &quot;auto&quot; should not throw 
+PASS form.dir: IDL set to &quot;auto&quot; followed by getAttribute() 
+PASS form.dir: IDL set to &quot;auto&quot; followed by IDL get 
+PASS form.dir: IDL set to &quot;xauto&quot; should not throw 
+PASS form.dir: IDL set to &quot;xauto&quot; followed by getAttribute() 
+PASS form.dir: IDL set to &quot;xauto&quot; followed by IDL get 
+PASS form.dir: IDL set to &quot;auto\0&quot; should not throw 
+PASS form.dir: IDL set to &quot;auto\0&quot; followed by getAttribute() 
+PASS form.dir: IDL set to &quot;auto\0&quot; followed by IDL get 
+PASS form.dir: IDL set to &quot;uto&quot; should not throw 
+PASS form.dir: IDL set to &quot;uto&quot; followed by getAttribute() 
+PASS form.dir: IDL set to &quot;uto&quot; followed by IDL get 
+PASS form.dir: IDL set to &quot;AUTO&quot; should not throw 
+PASS form.dir: IDL set to &quot;AUTO&quot; followed by getAttribute() 
+PASS form.dir: IDL set to &quot;AUTO&quot; followed by IDL get 
+PASS form.className (&lt;form class&gt;): typeof IDL attribute 
+PASS form.className (&lt;form class&gt;): IDL get with DOM attribute unset 
+PASS form.className (&lt;form class&gt;): setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): setAttribute() to &quot;&quot; followed by IDL get 
+PASS form.className (&lt;form class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS form.className (&lt;form class&gt;): setAttribute() to undefined followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): setAttribute() to undefined followed by IDL get 
+PASS form.className (&lt;form class&gt;): setAttribute() to 7 followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): setAttribute() to 7 followed by IDL get 
+PASS form.className (&lt;form class&gt;): setAttribute() to 1.5 followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): setAttribute() to 1.5 followed by IDL get 
+PASS form.className (&lt;form class&gt;): setAttribute() to true followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): setAttribute() to true followed by IDL get 
+PASS form.className (&lt;form class&gt;): setAttribute() to false followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): setAttribute() to false followed by IDL get 
+PASS form.className (&lt;form class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.className (&lt;form class&gt;): setAttribute() to NaN followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): setAttribute() to NaN followed by IDL get 
+PASS form.className (&lt;form class&gt;): setAttribute() to Infinity followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): setAttribute() to Infinity followed by IDL get 
+PASS form.className (&lt;form class&gt;): setAttribute() to -Infinity followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): setAttribute() to -Infinity followed by IDL get 
+PASS form.className (&lt;form class&gt;): setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS form.className (&lt;form class&gt;): setAttribute() to null followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): setAttribute() to null followed by IDL get 
+PASS form.className (&lt;form class&gt;): setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS form.className (&lt;form class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS form.className (&lt;form class&gt;): IDL set to &quot;&quot; should not throw 
+PASS form.className (&lt;form class&gt;): IDL set to &quot;&quot; followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): IDL set to &quot;&quot; followed by IDL get 
+PASS form.className (&lt;form class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS form.className (&lt;form class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS form.className (&lt;form class&gt;): IDL set to undefined should not throw 
+PASS form.className (&lt;form class&gt;): IDL set to undefined followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): IDL set to undefined followed by IDL get 
+PASS form.className (&lt;form class&gt;): IDL set to 7 should not throw 
+PASS form.className (&lt;form class&gt;): IDL set to 7 followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): IDL set to 7 followed by IDL get 
+PASS form.className (&lt;form class&gt;): IDL set to 1.5 should not throw 
+PASS form.className (&lt;form class&gt;): IDL set to 1.5 followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): IDL set to 1.5 followed by IDL get 
+PASS form.className (&lt;form class&gt;): IDL set to true should not throw 
+PASS form.className (&lt;form class&gt;): IDL set to true followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): IDL set to true followed by IDL get 
+PASS form.className (&lt;form class&gt;): IDL set to false should not throw 
+PASS form.className (&lt;form class&gt;): IDL set to false followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): IDL set to false followed by IDL get 
+PASS form.className (&lt;form class&gt;): IDL set to object &quot;[object Object]&quot; should not throw 
+PASS form.className (&lt;form class&gt;): IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.className (&lt;form class&gt;): IDL set to NaN should not throw 
+PASS form.className (&lt;form class&gt;): IDL set to NaN followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): IDL set to NaN followed by IDL get 
+PASS form.className (&lt;form class&gt;): IDL set to Infinity should not throw 
+PASS form.className (&lt;form class&gt;): IDL set to Infinity followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): IDL set to Infinity followed by IDL get 
+PASS form.className (&lt;form class&gt;): IDL set to -Infinity should not throw 
+PASS form.className (&lt;form class&gt;): IDL set to -Infinity followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): IDL set to -Infinity followed by IDL get 
+PASS form.className (&lt;form class&gt;): IDL set to &quot;\0&quot; should not throw 
+PASS form.className (&lt;form class&gt;): IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): IDL set to &quot;\0&quot; followed by IDL get 
+PASS form.className (&lt;form class&gt;): IDL set to null should not throw 
+PASS form.className (&lt;form class&gt;): IDL set to null followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): IDL set to null followed by IDL get 
+PASS form.className (&lt;form class&gt;): IDL set to object &quot;test-toString&quot; should not throw 
+PASS form.className (&lt;form class&gt;): IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS form.className (&lt;form class&gt;): IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS form.className (&lt;form class&gt;): IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS form.className (&lt;form class&gt;): IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS form.hidden: typeof IDL attribute 
+PASS form.hidden: IDL get with DOM attribute unset 
+PASS form.hidden: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS form.hidden: setAttribute() to &quot;&quot; followed by IDL get 
+PASS form.hidden: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS form.hidden: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS form.hidden: setAttribute() to undefined followed by getAttribute() 
+PASS form.hidden: setAttribute() to undefined followed by IDL get 
+PASS form.hidden: setAttribute() to null followed by getAttribute() 
+PASS form.hidden: setAttribute() to null followed by IDL get 
+PASS form.hidden: setAttribute() to 7 followed by getAttribute() 
+PASS form.hidden: setAttribute() to 7 followed by IDL get 
+PASS form.hidden: setAttribute() to 1.5 followed by getAttribute() 
+PASS form.hidden: setAttribute() to 1.5 followed by IDL get 
+PASS form.hidden: setAttribute() to true followed by getAttribute() 
+PASS form.hidden: setAttribute() to true followed by IDL get 
+PASS form.hidden: setAttribute() to false followed by getAttribute() 
+PASS form.hidden: setAttribute() to false followed by IDL get 
+PASS form.hidden: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS form.hidden: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.hidden: setAttribute() to NaN followed by getAttribute() 
+PASS form.hidden: setAttribute() to NaN followed by IDL get 
+PASS form.hidden: setAttribute() to Infinity followed by getAttribute() 
+PASS form.hidden: setAttribute() to Infinity followed by IDL get 
+PASS form.hidden: setAttribute() to -Infinity followed by getAttribute() 
+PASS form.hidden: setAttribute() to -Infinity followed by IDL get 
+PASS form.hidden: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS form.hidden: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS form.hidden: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS form.hidden: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS form.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS form.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS form.hidden: setAttribute() to &quot;hidden&quot; followed by getAttribute() 
+PASS form.hidden: setAttribute() to &quot;hidden&quot; followed by IDL get 
+PASS form.hidden: IDL set to &quot;&quot; should not throw 
+PASS form.hidden: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS form.hidden: IDL set to &quot;&quot; followed by IDL get 
+PASS form.hidden: IDL set to &quot; foo &quot; should not throw 
+PASS form.hidden: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS form.hidden: IDL set to &quot; foo &quot; followed by IDL get 
+PASS form.hidden: IDL set to undefined should not throw 
+PASS form.hidden: IDL set to undefined followed by hasAttribute() 
+PASS form.hidden: IDL set to undefined followed by IDL get 
+PASS form.hidden: IDL set to null should not throw 
+PASS form.hidden: IDL set to null followed by hasAttribute() 
+PASS form.hidden: IDL set to null followed by IDL get 
+PASS form.hidden: IDL set to 7 should not throw 
+PASS form.hidden: IDL set to 7 followed by hasAttribute() 
+PASS form.hidden: IDL set to 7 followed by IDL get 
+PASS form.hidden: IDL set to 1.5 should not throw 
+PASS form.hidden: IDL set to 1.5 followed by hasAttribute() 
+PASS form.hidden: IDL set to 1.5 followed by IDL get 
+PASS form.hidden: IDL set to true should not throw 
+PASS form.hidden: IDL set to true followed by hasAttribute() 
+PASS form.hidden: IDL set to true followed by IDL get 
+PASS form.hidden: IDL set to false should not throw 
+PASS form.hidden: IDL set to false followed by hasAttribute() 
+PASS form.hidden: IDL set to false followed by IDL get 
+PASS form.hidden: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS form.hidden: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS form.hidden: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.hidden: IDL set to NaN should not throw 
+PASS form.hidden: IDL set to NaN followed by hasAttribute() 
+PASS form.hidden: IDL set to NaN followed by IDL get 
+PASS form.hidden: IDL set to Infinity should not throw 
+PASS form.hidden: IDL set to Infinity followed by hasAttribute() 
+PASS form.hidden: IDL set to Infinity followed by IDL get 
+PASS form.hidden: IDL set to -Infinity should not throw 
+PASS form.hidden: IDL set to -Infinity followed by hasAttribute() 
+PASS form.hidden: IDL set to -Infinity followed by IDL get 
+PASS form.hidden: IDL set to &quot;\0&quot; should not throw 
+PASS form.hidden: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS form.hidden: IDL set to &quot;\0&quot; followed by IDL get 
+PASS form.hidden: IDL set to object &quot;test-toString&quot; should not throw 
+PASS form.hidden: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS form.hidden: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS form.hidden: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS form.hidden: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS form.hidden: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS form.accessKey: typeof IDL attribute 
+PASS form.accessKey: IDL get with DOM attribute unset 
+PASS form.accessKey: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS form.accessKey: setAttribute() to &quot;&quot; followed by IDL get 
+PASS form.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS form.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS form.accessKey: setAttribute() to undefined followed by getAttribute() 
+PASS form.accessKey: setAttribute() to undefined followed by IDL get 
+PASS form.accessKey: setAttribute() to 7 followed by getAttribute() 
+PASS form.accessKey: setAttribute() to 7 followed by IDL get 
+PASS form.accessKey: setAttribute() to 1.5 followed by getAttribute() 
+PASS form.accessKey: setAttribute() to 1.5 followed by IDL get 
+PASS form.accessKey: setAttribute() to true followed by getAttribute() 
+PASS form.accessKey: setAttribute() to true followed by IDL get 
+PASS form.accessKey: setAttribute() to false followed by getAttribute() 
+PASS form.accessKey: setAttribute() to false followed by IDL get 
+PASS form.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS form.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.accessKey: setAttribute() to NaN followed by getAttribute() 
+PASS form.accessKey: setAttribute() to NaN followed by IDL get 
+PASS form.accessKey: setAttribute() to Infinity followed by getAttribute() 
+PASS form.accessKey: setAttribute() to Infinity followed by IDL get 
+PASS form.accessKey: setAttribute() to -Infinity followed by getAttribute() 
+PASS form.accessKey: setAttribute() to -Infinity followed by IDL get 
+PASS form.accessKey: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS form.accessKey: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS form.accessKey: setAttribute() to null followed by getAttribute() 
+PASS form.accessKey: setAttribute() to null followed by IDL get 
+PASS form.accessKey: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS form.accessKey: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS form.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS form.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS form.accessKey: IDL set to &quot;&quot; should not throw 
+PASS form.accessKey: IDL set to &quot;&quot; followed by getAttribute() 
+PASS form.accessKey: IDL set to &quot;&quot; followed by IDL get 
+PASS form.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS form.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS form.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS form.accessKey: IDL set to undefined should not throw 
+PASS form.accessKey: IDL set to undefined followed by getAttribute() 
+PASS form.accessKey: IDL set to undefined followed by IDL get 
+PASS form.accessKey: IDL set to 7 should not throw 
+PASS form.accessKey: IDL set to 7 followed by getAttribute() 
+PASS form.accessKey: IDL set to 7 followed by IDL get 
+PASS form.accessKey: IDL set to 1.5 should not throw 
+PASS form.accessKey: IDL set to 1.5 followed by getAttribute() 
+PASS form.accessKey: IDL set to 1.5 followed by IDL get 
+PASS form.accessKey: IDL set to true should not throw 
+PASS form.accessKey: IDL set to true followed by getAttribute() 
+PASS form.accessKey: IDL set to true followed by IDL get 
+PASS form.accessKey: IDL set to false should not throw 
+PASS form.accessKey: IDL set to false followed by getAttribute() 
+PASS form.accessKey: IDL set to false followed by IDL get 
+PASS form.accessKey: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS form.accessKey: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS form.accessKey: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.accessKey: IDL set to NaN should not throw 
+PASS form.accessKey: IDL set to NaN followed by getAttribute() 
+PASS form.accessKey: IDL set to NaN followed by IDL get 
+PASS form.accessKey: IDL set to Infinity should not throw 
+PASS form.accessKey: IDL set to Infinity followed by getAttribute() 
+PASS form.accessKey: IDL set to Infinity followed by IDL get 
+PASS form.accessKey: IDL set to -Infinity should not throw 
+PASS form.accessKey: IDL set to -Infinity followed by getAttribute() 
+PASS form.accessKey: IDL set to -Infinity followed by IDL get 
+PASS form.accessKey: IDL set to &quot;\0&quot; should not throw 
+PASS form.accessKey: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS form.accessKey: IDL set to &quot;\0&quot; followed by IDL get 
+PASS form.accessKey: IDL set to null should not throw 
+PASS form.accessKey: IDL set to null followed by getAttribute() 
+PASS form.accessKey: IDL set to null followed by IDL get 
+PASS form.accessKey: IDL set to object &quot;test-toString&quot; should not throw 
+PASS form.accessKey: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS form.accessKey: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS form.accessKey: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS form.accessKey: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS form.accessKey: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS form.tabIndex: typeof IDL attribute 
+PASS form.tabIndex: setAttribute() to -36 followed by getAttribute() 
+PASS form.tabIndex: setAttribute() to -36 followed by IDL get 
+PASS form.tabIndex: setAttribute() to -1 followed by getAttribute() 
+PASS form.tabIndex: setAttribute() to -1 followed by IDL get 
+PASS form.tabIndex: setAttribute() to 0 followed by getAttribute() 
+PASS form.tabIndex: setAttribute() to 0 followed by IDL get 
+PASS form.tabIndex: setAttribute() to 1 followed by getAttribute() 
+PASS form.tabIndex: setAttribute() to 1 followed by IDL get 
+PASS form.tabIndex: setAttribute() to 2147483647 followed by getAttribute() 
+PASS form.tabIndex: setAttribute() to 2147483647 followed by IDL get 
+PASS form.tabIndex: setAttribute() to -2147483648 followed by getAttribute() 
+PASS form.tabIndex: setAttribute() to -2147483648 followed by IDL get 
+PASS form.tabIndex: setAttribute() to &quot;-1&quot; followed by getAttribute() 
+PASS form.tabIndex: setAttribute() to &quot;-1&quot; followed by IDL get 
+PASS form.tabIndex: setAttribute() to &quot;-0&quot; followed by getAttribute() 
+PASS form.tabIndex: setAttribute() to &quot;-0&quot; followed by IDL get 
+PASS form.tabIndex: setAttribute() to &quot;0&quot; followed by getAttribute() 
+PASS form.tabIndex: setAttribute() to &quot;0&quot; followed by IDL get 
+PASS form.tabIndex: setAttribute() to &quot;1&quot; followed by getAttribute() 
+PASS form.tabIndex: setAttribute() to &quot;1&quot; followed by IDL get 
+PASS form.tabIndex: setAttribute() to &quot;\t7&quot; followed by getAttribute() 
+PASS form.tabIndex: setAttribute() to &quot;\t7&quot; followed by IDL get 
+PASS form.tabIndex: setAttribute() to &quot;\f7&quot; followed by getAttribute() 
+PASS form.tabIndex: setAttribute() to &quot;\f7&quot; followed by IDL get 
+PASS form.tabIndex: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS form.tabIndex: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS form.tabIndex: setAttribute() to &quot;\n7&quot; followed by getAttribute() 
+PASS form.tabIndex: setAttribute() to &quot;\n7&quot; followed by IDL get 
+PASS form.tabIndex: setAttribute() to &quot;\r7&quot; followed by getAttribute() 
+PASS form.tabIndex: setAttribute() to &quot;\r7&quot; followed by IDL get 
+PASS form.tabIndex: setAttribute() to 1.5 followed by getAttribute() 
+PASS form.tabIndex: setAttribute() to 1.5 followed by IDL get 
+PASS form.tabIndex: setAttribute() to object &quot;2&quot; followed by getAttribute() 
+PASS form.tabIndex: setAttribute() to object &quot;2&quot; followed by IDL get 
+PASS form.tabIndex: IDL set to -36 should not throw 
+PASS form.tabIndex: IDL set to -36 followed by getAttribute() 
+PASS form.tabIndex: IDL set to -36 followed by IDL get 
+PASS form.tabIndex: IDL set to -1 should not throw 
+PASS form.tabIndex: IDL set to -1 followed by getAttribute() 
+PASS form.tabIndex: IDL set to -1 followed by IDL get 
+PASS form.tabIndex: IDL set to 0 should not throw 
+PASS form.tabIndex: IDL set to 0 followed by getAttribute() 
+PASS form.tabIndex: IDL set to 0 followed by IDL get 
+PASS form.tabIndex: IDL set to 1 should not throw 
+PASS form.tabIndex: IDL set to 1 followed by getAttribute() 
+PASS form.tabIndex: IDL set to 1 followed by IDL get 
+PASS form.tabIndex: IDL set to 2147483647 should not throw 
+PASS form.tabIndex: IDL set to 2147483647 followed by getAttribute() 
+PASS form.tabIndex: IDL set to 2147483647 followed by IDL get 
+PASS form.tabIndex: IDL set to -2147483648 should not throw 
+PASS form.tabIndex: IDL set to -2147483648 followed by getAttribute() 
+PASS form.tabIndex: IDL set to -2147483648 followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): typeof IDL attribute 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL get with DOM attribute unset 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to &quot;&quot; followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to undefined followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to undefined followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to 7 followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to 7 followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to 1.5 followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to 1.5 followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to true followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to true followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to false followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to false followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to NaN followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to NaN followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to Infinity followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to Infinity followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to -Infinity followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to -Infinity followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to null followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to null followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to &quot;&quot; should not throw 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to &quot;&quot; followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to &quot;&quot; followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to undefined should not throw 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to undefined followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to undefined followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to 7 should not throw 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to 7 followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to 7 followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to 1.5 should not throw 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to 1.5 followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to 1.5 followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to true should not throw 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to true followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to true followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to false should not throw 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to false followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to false followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to object &quot;[object Object]&quot; should not throw 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to NaN should not throw 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to NaN followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to NaN followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to Infinity should not throw 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to Infinity followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to Infinity followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to -Infinity should not throw 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to -Infinity followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to -Infinity followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to &quot;\0&quot; should not throw 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to &quot;\0&quot; followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to null should not throw 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to null followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to null followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to object &quot;test-toString&quot; should not throw 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS form.acceptCharset (&lt;form accept-charset&gt;): IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS form.autocomplete: typeof IDL attribute 
+PASS form.autocomplete: IDL get with DOM attribute unset 
+PASS form.autocomplete: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS form.autocomplete: setAttribute() to &quot;&quot; followed by IDL get 
+PASS form.autocomplete: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS form.autocomplete: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS form.autocomplete: setAttribute() to undefined followed by getAttribute() 
+PASS form.autocomplete: setAttribute() to undefined followed by IDL get 
+PASS form.autocomplete: setAttribute() to 7 followed by getAttribute() 
+PASS form.autocomplete: setAttribute() to 7 followed by IDL get 
+PASS form.autocomplete: setAttribute() to 1.5 followed by getAttribute() 
+PASS form.autocomplete: setAttribute() to 1.5 followed by IDL get 
+PASS form.autocomplete: setAttribute() to true followed by getAttribute() 
+PASS form.autocomplete: setAttribute() to true followed by IDL get 
+PASS form.autocomplete: setAttribute() to false followed by getAttribute() 
+PASS form.autocomplete: setAttribute() to false followed by IDL get 
+PASS form.autocomplete: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS form.autocomplete: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.autocomplete: setAttribute() to NaN followed by getAttribute() 
+PASS form.autocomplete: setAttribute() to NaN followed by IDL get 
+PASS form.autocomplete: setAttribute() to Infinity followed by getAttribute() 
+PASS form.autocomplete: setAttribute() to Infinity followed by IDL get 
+PASS form.autocomplete: setAttribute() to -Infinity followed by getAttribute() 
+PASS form.autocomplete: setAttribute() to -Infinity followed by IDL get 
+PASS form.autocomplete: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS form.autocomplete: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS form.autocomplete: setAttribute() to null followed by getAttribute() 
+PASS form.autocomplete: setAttribute() to null followed by IDL get 
+PASS form.autocomplete: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS form.autocomplete: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS form.autocomplete: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS form.autocomplete: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS form.autocomplete: setAttribute() to &quot;on&quot; followed by getAttribute() 
+PASS form.autocomplete: setAttribute() to &quot;on&quot; followed by IDL get 
+PASS form.autocomplete: setAttribute() to &quot;xon&quot; followed by getAttribute() 
+PASS form.autocomplete: setAttribute() to &quot;xon&quot; followed by IDL get 
+PASS form.autocomplete: setAttribute() to &quot;on\0&quot; followed by getAttribute() 
+PASS form.autocomplete: setAttribute() to &quot;on\0&quot; followed by IDL get 
+PASS form.autocomplete: setAttribute() to &quot;n&quot; followed by getAttribute() 
+PASS form.autocomplete: setAttribute() to &quot;n&quot; followed by IDL get 
+PASS form.autocomplete: setAttribute() to &quot;ON&quot; followed by getAttribute() 
+PASS form.autocomplete: setAttribute() to &quot;ON&quot; followed by IDL get 
+PASS form.autocomplete: setAttribute() to &quot;off&quot; followed by getAttribute() 
+PASS form.autocomplete: setAttribute() to &quot;off&quot; followed by IDL get 
+PASS form.autocomplete: setAttribute() to &quot;xoff&quot; followed by getAttribute() 
+PASS form.autocomplete: setAttribute() to &quot;xoff&quot; followed by IDL get 
+PASS form.autocomplete: setAttribute() to &quot;off\0&quot; followed by getAttribute() 
+PASS form.autocomplete: setAttribute() to &quot;off\0&quot; followed by IDL get 
+PASS form.autocomplete: setAttribute() to &quot;ff&quot; followed by getAttribute() 
+PASS form.autocomplete: setAttribute() to &quot;ff&quot; followed by IDL get 
+PASS form.autocomplete: setAttribute() to &quot;OFF&quot; followed by getAttribute() 
+PASS form.autocomplete: setAttribute() to &quot;OFF&quot; followed by IDL get 
+PASS form.autocomplete: IDL set to &quot;&quot; should not throw 
+PASS form.autocomplete: IDL set to &quot;&quot; followed by getAttribute() 
+PASS form.autocomplete: IDL set to &quot;&quot; followed by IDL get 
+PASS form.autocomplete: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS form.autocomplete: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS form.autocomplete: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS form.autocomplete: IDL set to undefined should not throw 
+PASS form.autocomplete: IDL set to undefined followed by getAttribute() 
+PASS form.autocomplete: IDL set to undefined followed by IDL get 
+PASS form.autocomplete: IDL set to 7 should not throw 
+PASS form.autocomplete: IDL set to 7 followed by getAttribute() 
+PASS form.autocomplete: IDL set to 7 followed by IDL get 
+PASS form.autocomplete: IDL set to 1.5 should not throw 
+PASS form.autocomplete: IDL set to 1.5 followed by getAttribute() 
+PASS form.autocomplete: IDL set to 1.5 followed by IDL get 
+PASS form.autocomplete: IDL set to true should not throw 
+PASS form.autocomplete: IDL set to true followed by getAttribute() 
+PASS form.autocomplete: IDL set to true followed by IDL get 
+PASS form.autocomplete: IDL set to false should not throw 
+PASS form.autocomplete: IDL set to false followed by getAttribute() 
+PASS form.autocomplete: IDL set to false followed by IDL get 
+PASS form.autocomplete: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS form.autocomplete: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS form.autocomplete: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.autocomplete: IDL set to NaN should not throw 
+PASS form.autocomplete: IDL set to NaN followed by getAttribute() 
+PASS form.autocomplete: IDL set to NaN followed by IDL get 
+PASS form.autocomplete: IDL set to Infinity should not throw 
+PASS form.autocomplete: IDL set to Infinity followed by getAttribute() 
+PASS form.autocomplete: IDL set to Infinity followed by IDL get 
+PASS form.autocomplete: IDL set to -Infinity should not throw 
+PASS form.autocomplete: IDL set to -Infinity followed by getAttribute() 
+PASS form.autocomplete: IDL set to -Infinity followed by IDL get 
+PASS form.autocomplete: IDL set to &quot;\0&quot; should not throw 
+PASS form.autocomplete: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS form.autocomplete: IDL set to &quot;\0&quot; followed by IDL get 
+PASS form.autocomplete: IDL set to null should not throw 
+PASS form.autocomplete: IDL set to null followed by IDL get 
+PASS form.autocomplete: IDL set to object &quot;test-toString&quot; should not throw 
+PASS form.autocomplete: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS form.autocomplete: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS form.autocomplete: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS form.autocomplete: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS form.autocomplete: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS form.autocomplete: IDL set to &quot;on&quot; should not throw 
+PASS form.autocomplete: IDL set to &quot;on&quot; followed by getAttribute() 
+PASS form.autocomplete: IDL set to &quot;on&quot; followed by IDL get 
+PASS form.autocomplete: IDL set to &quot;xon&quot; should not throw 
+PASS form.autocomplete: IDL set to &quot;xon&quot; followed by getAttribute() 
+PASS form.autocomplete: IDL set to &quot;xon&quot; followed by IDL get 
+PASS form.autocomplete: IDL set to &quot;on\0&quot; should not throw 
+PASS form.autocomplete: IDL set to &quot;on\0&quot; followed by getAttribute() 
+PASS form.autocomplete: IDL set to &quot;on\0&quot; followed by IDL get 
+PASS form.autocomplete: IDL set to &quot;n&quot; should not throw 
+PASS form.autocomplete: IDL set to &quot;n&quot; followed by getAttribute() 
+PASS form.autocomplete: IDL set to &quot;n&quot; followed by IDL get 
+PASS form.autocomplete: IDL set to &quot;ON&quot; should not throw 
+PASS form.autocomplete: IDL set to &quot;ON&quot; followed by getAttribute() 
+PASS form.autocomplete: IDL set to &quot;ON&quot; followed by IDL get 
+PASS form.autocomplete: IDL set to &quot;off&quot; should not throw 
+PASS form.autocomplete: IDL set to &quot;off&quot; followed by getAttribute() 
+PASS form.autocomplete: IDL set to &quot;off&quot; followed by IDL get 
+PASS form.autocomplete: IDL set to &quot;xoff&quot; should not throw 
+PASS form.autocomplete: IDL set to &quot;xoff&quot; followed by getAttribute() 
+PASS form.autocomplete: IDL set to &quot;xoff&quot; followed by IDL get 
+PASS form.autocomplete: IDL set to &quot;off\0&quot; should not throw 
+PASS form.autocomplete: IDL set to &quot;off\0&quot; followed by getAttribute() 
+PASS form.autocomplete: IDL set to &quot;off\0&quot; followed by IDL get 
+PASS form.autocomplete: IDL set to &quot;ff&quot; should not throw 
+PASS form.autocomplete: IDL set to &quot;ff&quot; followed by getAttribute() 
+PASS form.autocomplete: IDL set to &quot;ff&quot; followed by IDL get 
+PASS form.autocomplete: IDL set to &quot;OFF&quot; should not throw 
+PASS form.autocomplete: IDL set to &quot;OFF&quot; followed by getAttribute() 
+PASS form.autocomplete: IDL set to &quot;OFF&quot; followed by IDL get 
+PASS form.enctype: typeof IDL attribute 
+PASS form.enctype: IDL get with DOM attribute unset 
+PASS form.enctype: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS form.enctype: setAttribute() to &quot;&quot; followed by IDL get 
+PASS form.enctype: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS form.enctype: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS form.enctype: setAttribute() to undefined followed by getAttribute() 
+PASS form.enctype: setAttribute() to undefined followed by IDL get 
+PASS form.enctype: setAttribute() to 7 followed by getAttribute() 
+PASS form.enctype: setAttribute() to 7 followed by IDL get 
+PASS form.enctype: setAttribute() to 1.5 followed by getAttribute() 
+PASS form.enctype: setAttribute() to 1.5 followed by IDL get 
+PASS form.enctype: setAttribute() to true followed by getAttribute() 
+PASS form.enctype: setAttribute() to true followed by IDL get 
+PASS form.enctype: setAttribute() to false followed by getAttribute() 
+PASS form.enctype: setAttribute() to false followed by IDL get 
+PASS form.enctype: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS form.enctype: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.enctype: setAttribute() to NaN followed by getAttribute() 
+PASS form.enctype: setAttribute() to NaN followed by IDL get 
+PASS form.enctype: setAttribute() to Infinity followed by getAttribute() 
+PASS form.enctype: setAttribute() to Infinity followed by IDL get 
+PASS form.enctype: setAttribute() to -Infinity followed by getAttribute() 
+PASS form.enctype: setAttribute() to -Infinity followed by IDL get 
+PASS form.enctype: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS form.enctype: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS form.enctype: setAttribute() to null followed by getAttribute() 
+PASS form.enctype: setAttribute() to null followed by IDL get 
+PASS form.enctype: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS form.enctype: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS form.enctype: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS form.enctype: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS form.enctype: setAttribute() to &quot;application/x-www-form-urlencoded&quot; followed by getAttribute() 
+PASS form.enctype: setAttribute() to &quot;application/x-www-form-urlencoded&quot; followed by IDL get 
+PASS form.enctype: setAttribute() to &quot;xapplication/x-www-form-urlencoded&quot; followed by getAttribute() 
+PASS form.enctype: setAttribute() to &quot;xapplication/x-www-form-urlencoded&quot; followed by IDL get 
+PASS form.enctype: setAttribute() to &quot;application/x-www-form-urlencoded\0&quot; followed by getAttribute() 
+PASS form.enctype: setAttribute() to &quot;application/x-www-form-urlencoded\0&quot; followed by IDL get 
+PASS form.enctype: setAttribute() to &quot;pplication/x-www-form-urlencoded&quot; followed by getAttribute() 
+PASS form.enctype: setAttribute() to &quot;pplication/x-www-form-urlencoded&quot; followed by IDL get 
+PASS form.enctype: setAttribute() to &quot;APPLICATION/X-WWW-FORM-URLENCODED&quot; followed by getAttribute() 
+PASS form.enctype: setAttribute() to &quot;APPLICATION/X-WWW-FORM-URLENCODED&quot; followed by IDL get 
+PASS form.enctype: setAttribute() to &quot;multipart/form-data&quot; followed by getAttribute() 
+PASS form.enctype: setAttribute() to &quot;multipart/form-data&quot; followed by IDL get 
+PASS form.enctype: setAttribute() to &quot;xmultipart/form-data&quot; followed by getAttribute() 
+PASS form.enctype: setAttribute() to &quot;xmultipart/form-data&quot; followed by IDL get 
+PASS form.enctype: setAttribute() to &quot;multipart/form-data\0&quot; followed by getAttribute() 
+PASS form.enctype: setAttribute() to &quot;multipart/form-data\0&quot; followed by IDL get 
+PASS form.enctype: setAttribute() to &quot;ultipart/form-data&quot; followed by getAttribute() 
+PASS form.enctype: setAttribute() to &quot;ultipart/form-data&quot; followed by IDL get 
+PASS form.enctype: setAttribute() to &quot;MULTIPART/FORM-DATA&quot; followed by getAttribute() 
+PASS form.enctype: setAttribute() to &quot;MULTIPART/FORM-DATA&quot; followed by IDL get 
+PASS form.enctype: setAttribute() to &quot;text/plain&quot; followed by getAttribute() 
+PASS form.enctype: setAttribute() to &quot;text/plain&quot; followed by IDL get 
+PASS form.enctype: setAttribute() to &quot;xtext/plain&quot; followed by getAttribute() 
+PASS form.enctype: setAttribute() to &quot;xtext/plain&quot; followed by IDL get 
+PASS form.enctype: setAttribute() to &quot;text/plain\0&quot; followed by getAttribute() 
+PASS form.enctype: setAttribute() to &quot;text/plain\0&quot; followed by IDL get 
+PASS form.enctype: setAttribute() to &quot;ext/plain&quot; followed by getAttribute() 
+PASS form.enctype: setAttribute() to &quot;ext/plain&quot; followed by IDL get 
+PASS form.enctype: setAttribute() to &quot;TEXT/PLAIN&quot; followed by getAttribute() 
+PASS form.enctype: setAttribute() to &quot;TEXT/PLAIN&quot; followed by IDL get 
+PASS form.enctype: IDL set to &quot;&quot; should not throw 
+PASS form.enctype: IDL set to &quot;&quot; followed by getAttribute() 
+PASS form.enctype: IDL set to &quot;&quot; followed by IDL get 
+PASS form.enctype: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS form.enctype: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS form.enctype: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS form.enctype: IDL set to undefined should not throw 
+PASS form.enctype: IDL set to undefined followed by getAttribute() 
+PASS form.enctype: IDL set to undefined followed by IDL get 
+PASS form.enctype: IDL set to 7 should not throw 
+PASS form.enctype: IDL set to 7 followed by getAttribute() 
+PASS form.enctype: IDL set to 7 followed by IDL get 
+PASS form.enctype: IDL set to 1.5 should not throw 
+PASS form.enctype: IDL set to 1.5 followed by getAttribute() 
+PASS form.enctype: IDL set to 1.5 followed by IDL get 
+PASS form.enctype: IDL set to true should not throw 
+PASS form.enctype: IDL set to true followed by getAttribute() 
+PASS form.enctype: IDL set to true followed by IDL get 
+PASS form.enctype: IDL set to false should not throw 
+PASS form.enctype: IDL set to false followed by getAttribute() 
+PASS form.enctype: IDL set to false followed by IDL get 
+PASS form.enctype: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS form.enctype: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS form.enctype: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.enctype: IDL set to NaN should not throw 
+PASS form.enctype: IDL set to NaN followed by getAttribute() 
+PASS form.enctype: IDL set to NaN followed by IDL get 
+PASS form.enctype: IDL set to Infinity should not throw 
+PASS form.enctype: IDL set to Infinity followed by getAttribute() 
+PASS form.enctype: IDL set to Infinity followed by IDL get 
+PASS form.enctype: IDL set to -Infinity should not throw 
+PASS form.enctype: IDL set to -Infinity followed by getAttribute() 
+PASS form.enctype: IDL set to -Infinity followed by IDL get 
+PASS form.enctype: IDL set to &quot;\0&quot; should not throw 
+PASS form.enctype: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS form.enctype: IDL set to &quot;\0&quot; followed by IDL get 
+PASS form.enctype: IDL set to null should not throw 
+PASS form.enctype: IDL set to null followed by IDL get 
+PASS form.enctype: IDL set to object &quot;test-toString&quot; should not throw 
+PASS form.enctype: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS form.enctype: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS form.enctype: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS form.enctype: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS form.enctype: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS form.enctype: IDL set to &quot;application/x-www-form-urlencoded&quot; should not throw 
+PASS form.enctype: IDL set to &quot;application/x-www-form-urlencoded&quot; followed by getAttribute() 
+PASS form.enctype: IDL set to &quot;application/x-www-form-urlencoded&quot; followed by IDL get 
+PASS form.enctype: IDL set to &quot;xapplication/x-www-form-urlencoded&quot; should not throw 
+PASS form.enctype: IDL set to &quot;xapplication/x-www-form-urlencoded&quot; followed by getAttribute() 
+PASS form.enctype: IDL set to &quot;xapplication/x-www-form-urlencoded&quot; followed by IDL get 
+PASS form.enctype: IDL set to &quot;application/x-www-form-urlencoded\0&quot; should not throw 
+PASS form.enctype: IDL set to &quot;application/x-www-form-urlencoded\0&quot; followed by getAttribute() 
+PASS form.enctype: IDL set to &quot;application/x-www-form-urlencoded\0&quot; followed by IDL get 
+PASS form.enctype: IDL set to &quot;pplication/x-www-form-urlencoded&quot; should not throw 
+PASS form.enctype: IDL set to &quot;pplication/x-www-form-urlencoded&quot; followed by getAttribute() 
+PASS form.enctype: IDL set to &quot;pplication/x-www-form-urlencoded&quot; followed by IDL get 
+PASS form.enctype: IDL set to &quot;APPLICATION/X-WWW-FORM-URLENCODED&quot; should not throw 
+PASS form.enctype: IDL set to &quot;APPLICATION/X-WWW-FORM-URLENCODED&quot; followed by getAttribute() 
+PASS form.enctype: IDL set to &quot;APPLICATION/X-WWW-FORM-URLENCODED&quot; followed by IDL get 
+PASS form.enctype: IDL set to &quot;multipart/form-data&quot; should not throw 
+PASS form.enctype: IDL set to &quot;multipart/form-data&quot; followed by getAttribute() 
+PASS form.enctype: IDL set to &quot;multipart/form-data&quot; followed by IDL get 
+PASS form.enctype: IDL set to &quot;xmultipart/form-data&quot; should not throw 
+PASS form.enctype: IDL set to &quot;xmultipart/form-data&quot; followed by getAttribute() 
+PASS form.enctype: IDL set to &quot;xmultipart/form-data&quot; followed by IDL get 
+PASS form.enctype: IDL set to &quot;multipart/form-data\0&quot; should not throw 
+PASS form.enctype: IDL set to &quot;multipart/form-data\0&quot; followed by getAttribute() 
+PASS form.enctype: IDL set to &quot;multipart/form-data\0&quot; followed by IDL get 
+PASS form.enctype: IDL set to &quot;ultipart/form-data&quot; should not throw 
+PASS form.enctype: IDL set to &quot;ultipart/form-data&quot; followed by getAttribute() 
+PASS form.enctype: IDL set to &quot;ultipart/form-data&quot; followed by IDL get 
+PASS form.enctype: IDL set to &quot;MULTIPART/FORM-DATA&quot; should not throw 
+PASS form.enctype: IDL set to &quot;MULTIPART/FORM-DATA&quot; followed by getAttribute() 
+PASS form.enctype: IDL set to &quot;MULTIPART/FORM-DATA&quot; followed by IDL get 
+PASS form.enctype: IDL set to &quot;text/plain&quot; should not throw 
+PASS form.enctype: IDL set to &quot;text/plain&quot; followed by getAttribute() 
+PASS form.enctype: IDL set to &quot;text/plain&quot; followed by IDL get 
+PASS form.enctype: IDL set to &quot;xtext/plain&quot; should not throw 
+PASS form.enctype: IDL set to &quot;xtext/plain&quot; followed by getAttribute() 
+PASS form.enctype: IDL set to &quot;xtext/plain&quot; followed by IDL get 
+PASS form.enctype: IDL set to &quot;text/plain\0&quot; should not throw 
+PASS form.enctype: IDL set to &quot;text/plain\0&quot; followed by getAttribute() 
+PASS form.enctype: IDL set to &quot;text/plain\0&quot; followed by IDL get 
+PASS form.enctype: IDL set to &quot;ext/plain&quot; should not throw 
+PASS form.enctype: IDL set to &quot;ext/plain&quot; followed by getAttribute() 
+PASS form.enctype: IDL set to &quot;ext/plain&quot; followed by IDL get 
+PASS form.enctype: IDL set to &quot;TEXT/PLAIN&quot; should not throw 
+PASS form.enctype: IDL set to &quot;TEXT/PLAIN&quot; followed by getAttribute() 
+PASS form.enctype: IDL set to &quot;TEXT/PLAIN&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): typeof IDL attribute 
+PASS form.encoding (&lt;form enctype&gt;): IDL get with DOM attribute unset 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to undefined followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to undefined followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to 7 followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to 7 followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to 1.5 followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to 1.5 followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to true followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to true followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to false followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to false followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to NaN followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to NaN followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to Infinity followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to Infinity followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to -Infinity followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to -Infinity followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to null followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to null followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;application/x-www-form-urlencoded&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;application/x-www-form-urlencoded&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;xapplication/x-www-form-urlencoded&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;xapplication/x-www-form-urlencoded&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;application/x-www-form-urlencoded\0&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;application/x-www-form-urlencoded\0&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;pplication/x-www-form-urlencoded&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;pplication/x-www-form-urlencoded&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;APPLICATION/X-WWW-FORM-URLENCODED&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;APPLICATION/X-WWW-FORM-URLENCODED&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;multipart/form-data&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;multipart/form-data&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;xmultipart/form-data&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;xmultipart/form-data&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;multipart/form-data\0&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;multipart/form-data\0&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;ultipart/form-data&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;ultipart/form-data&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;MULTIPART/FORM-DATA&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;MULTIPART/FORM-DATA&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;text/plain&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;text/plain&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;xtext/plain&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;xtext/plain&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;text/plain\0&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;text/plain\0&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;ext/plain&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;ext/plain&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;TEXT/PLAIN&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): setAttribute() to &quot;TEXT/PLAIN&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;&quot; should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to undefined should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to undefined followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to undefined followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to 7 should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to 7 followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to 7 followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to 1.5 should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to 1.5 followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to 1.5 followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to true should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to true followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to true followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to false should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to false followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to false followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to object &quot;[object Object]&quot; should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to NaN should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to NaN followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to NaN followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to Infinity should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to Infinity followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to Infinity followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to -Infinity should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to -Infinity followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to -Infinity followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;\0&quot; should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;\0&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to null should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to null followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to object &quot;test-toString&quot; should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;application/x-www-form-urlencoded&quot; should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;application/x-www-form-urlencoded&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;application/x-www-form-urlencoded&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;xapplication/x-www-form-urlencoded&quot; should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;xapplication/x-www-form-urlencoded&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;xapplication/x-www-form-urlencoded&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;application/x-www-form-urlencoded\0&quot; should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;application/x-www-form-urlencoded\0&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;application/x-www-form-urlencoded\0&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;pplication/x-www-form-urlencoded&quot; should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;pplication/x-www-form-urlencoded&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;pplication/x-www-form-urlencoded&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;APPLICATION/X-WWW-FORM-URLENCODED&quot; should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;APPLICATION/X-WWW-FORM-URLENCODED&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;APPLICATION/X-WWW-FORM-URLENCODED&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;multipart/form-data&quot; should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;multipart/form-data&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;multipart/form-data&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;xmultipart/form-data&quot; should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;xmultipart/form-data&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;xmultipart/form-data&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;multipart/form-data\0&quot; should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;multipart/form-data\0&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;multipart/form-data\0&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;ultipart/form-data&quot; should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;ultipart/form-data&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;ultipart/form-data&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;MULTIPART/FORM-DATA&quot; should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;MULTIPART/FORM-DATA&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;MULTIPART/FORM-DATA&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;text/plain&quot; should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;text/plain&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;text/plain&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;xtext/plain&quot; should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;xtext/plain&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;xtext/plain&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;text/plain\0&quot; should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;text/plain\0&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;text/plain\0&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;ext/plain&quot; should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;ext/plain&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;ext/plain&quot; followed by IDL get 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;TEXT/PLAIN&quot; should not throw 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;TEXT/PLAIN&quot; followed by getAttribute() 
+PASS form.encoding (&lt;form enctype&gt;): IDL set to &quot;TEXT/PLAIN&quot; followed by IDL get 
+PASS form.method: typeof IDL attribute 
+PASS form.method: IDL get with DOM attribute unset 
+PASS form.method: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS form.method: setAttribute() to &quot;&quot; followed by IDL get 
+PASS form.method: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS form.method: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS form.method: setAttribute() to undefined followed by getAttribute() 
+PASS form.method: setAttribute() to undefined followed by IDL get 
+PASS form.method: setAttribute() to 7 followed by getAttribute() 
+PASS form.method: setAttribute() to 7 followed by IDL get 
+PASS form.method: setAttribute() to 1.5 followed by getAttribute() 
+PASS form.method: setAttribute() to 1.5 followed by IDL get 
+PASS form.method: setAttribute() to true followed by getAttribute() 
+PASS form.method: setAttribute() to true followed by IDL get 
+PASS form.method: setAttribute() to false followed by getAttribute() 
+PASS form.method: setAttribute() to false followed by IDL get 
+PASS form.method: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS form.method: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.method: setAttribute() to NaN followed by getAttribute() 
+PASS form.method: setAttribute() to NaN followed by IDL get 
+PASS form.method: setAttribute() to Infinity followed by getAttribute() 
+PASS form.method: setAttribute() to Infinity followed by IDL get 
+PASS form.method: setAttribute() to -Infinity followed by getAttribute() 
+PASS form.method: setAttribute() to -Infinity followed by IDL get 
+PASS form.method: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS form.method: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS form.method: setAttribute() to null followed by getAttribute() 
+PASS form.method: setAttribute() to null followed by IDL get 
+PASS form.method: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS form.method: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS form.method: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS form.method: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS form.method: setAttribute() to &quot;get&quot; followed by getAttribute() 
+PASS form.method: setAttribute() to &quot;get&quot; followed by IDL get 
+PASS form.method: setAttribute() to &quot;xget&quot; followed by getAttribute() 
+PASS form.method: setAttribute() to &quot;xget&quot; followed by IDL get 
+PASS form.method: setAttribute() to &quot;get\0&quot; followed by getAttribute() 
+PASS form.method: setAttribute() to &quot;get\0&quot; followed by IDL get 
+PASS form.method: setAttribute() to &quot;et&quot; followed by getAttribute() 
+PASS form.method: setAttribute() to &quot;et&quot; followed by IDL get 
+PASS form.method: setAttribute() to &quot;GET&quot; followed by getAttribute() 
+PASS form.method: setAttribute() to &quot;GET&quot; followed by IDL get 
+PASS form.method: setAttribute() to &quot;post&quot; followed by getAttribute() 
+PASS form.method: setAttribute() to &quot;post&quot; followed by IDL get 
+PASS form.method: setAttribute() to &quot;xpost&quot; followed by getAttribute() 
+PASS form.method: setAttribute() to &quot;xpost&quot; followed by IDL get 
+PASS form.method: setAttribute() to &quot;post\0&quot; followed by getAttribute() 
+PASS form.method: setAttribute() to &quot;post\0&quot; followed by IDL get 
+PASS form.method: setAttribute() to &quot;ost&quot; followed by getAttribute() 
+PASS form.method: setAttribute() to &quot;ost&quot; followed by IDL get 
+PASS form.method: setAttribute() to &quot;POST&quot; followed by getAttribute() 
+PASS form.method: setAttribute() to &quot;POST&quot; followed by IDL get 
+PASS form.method: setAttribute() to &quot;dialog&quot; followed by getAttribute() 
+FAIL form.method: setAttribute() to &quot;dialog&quot; followed by IDL get assert_equals: expected &quot;dialog&quot; but got &quot;get&quot;
+PASS form.method: setAttribute() to &quot;xdialog&quot; followed by getAttribute() 
+PASS form.method: setAttribute() to &quot;xdialog&quot; followed by IDL get 
+PASS form.method: setAttribute() to &quot;dialog\0&quot; followed by getAttribute() 
+PASS form.method: setAttribute() to &quot;dialog\0&quot; followed by IDL get 
+PASS form.method: setAttribute() to &quot;ialog&quot; followed by getAttribute() 
+PASS form.method: setAttribute() to &quot;ialog&quot; followed by IDL get 
+PASS form.method: setAttribute() to &quot;DIALOG&quot; followed by getAttribute() 
+FAIL form.method: setAttribute() to &quot;DIALOG&quot; followed by IDL get assert_equals: expected &quot;dialog&quot; but got &quot;get&quot;
+PASS form.method: IDL set to &quot;&quot; should not throw 
+PASS form.method: IDL set to &quot;&quot; followed by getAttribute() 
+PASS form.method: IDL set to &quot;&quot; followed by IDL get 
+PASS form.method: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS form.method: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS form.method: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS form.method: IDL set to undefined should not throw 
+PASS form.method: IDL set to undefined followed by getAttribute() 
+PASS form.method: IDL set to undefined followed by IDL get 
+PASS form.method: IDL set to 7 should not throw 
+PASS form.method: IDL set to 7 followed by getAttribute() 
+PASS form.method: IDL set to 7 followed by IDL get 
+PASS form.method: IDL set to 1.5 should not throw 
+PASS form.method: IDL set to 1.5 followed by getAttribute() 
+PASS form.method: IDL set to 1.5 followed by IDL get 
+PASS form.method: IDL set to true should not throw 
+PASS form.method: IDL set to true followed by getAttribute() 
+PASS form.method: IDL set to true followed by IDL get 
+PASS form.method: IDL set to false should not throw 
+PASS form.method: IDL set to false followed by getAttribute() 
+PASS form.method: IDL set to false followed by IDL get 
+PASS form.method: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS form.method: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS form.method: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.method: IDL set to NaN should not throw 
+PASS form.method: IDL set to NaN followed by getAttribute() 
+PASS form.method: IDL set to NaN followed by IDL get 
+PASS form.method: IDL set to Infinity should not throw 
+PASS form.method: IDL set to Infinity followed by getAttribute() 
+PASS form.method: IDL set to Infinity followed by IDL get 
+PASS form.method: IDL set to -Infinity should not throw 
+PASS form.method: IDL set to -Infinity followed by getAttribute() 
+PASS form.method: IDL set to -Infinity followed by IDL get 
+PASS form.method: IDL set to &quot;\0&quot; should not throw 
+PASS form.method: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS form.method: IDL set to &quot;\0&quot; followed by IDL get 
+PASS form.method: IDL set to null should not throw 
+PASS form.method: IDL set to null followed by IDL get 
+PASS form.method: IDL set to object &quot;test-toString&quot; should not throw 
+PASS form.method: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS form.method: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS form.method: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS form.method: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS form.method: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS form.method: IDL set to &quot;get&quot; should not throw 
+PASS form.method: IDL set to &quot;get&quot; followed by getAttribute() 
+PASS form.method: IDL set to &quot;get&quot; followed by IDL get 
+PASS form.method: IDL set to &quot;xget&quot; should not throw 
+PASS form.method: IDL set to &quot;xget&quot; followed by getAttribute() 
+PASS form.method: IDL set to &quot;xget&quot; followed by IDL get 
+PASS form.method: IDL set to &quot;get\0&quot; should not throw 
+PASS form.method: IDL set to &quot;get\0&quot; followed by getAttribute() 
+PASS form.method: IDL set to &quot;get\0&quot; followed by IDL get 
+PASS form.method: IDL set to &quot;et&quot; should not throw 
+PASS form.method: IDL set to &quot;et&quot; followed by getAttribute() 
+PASS form.method: IDL set to &quot;et&quot; followed by IDL get 
+PASS form.method: IDL set to &quot;GET&quot; should not throw 
+PASS form.method: IDL set to &quot;GET&quot; followed by getAttribute() 
+PASS form.method: IDL set to &quot;GET&quot; followed by IDL get 
+PASS form.method: IDL set to &quot;post&quot; should not throw 
+PASS form.method: IDL set to &quot;post&quot; followed by getAttribute() 
+PASS form.method: IDL set to &quot;post&quot; followed by IDL get 
+PASS form.method: IDL set to &quot;xpost&quot; should not throw 
+PASS form.method: IDL set to &quot;xpost&quot; followed by getAttribute() 
+PASS form.method: IDL set to &quot;xpost&quot; followed by IDL get 
+PASS form.method: IDL set to &quot;post\0&quot; should not throw 
+PASS form.method: IDL set to &quot;post\0&quot; followed by getAttribute() 
+PASS form.method: IDL set to &quot;post\0&quot; followed by IDL get 
+PASS form.method: IDL set to &quot;ost&quot; should not throw 
+PASS form.method: IDL set to &quot;ost&quot; followed by getAttribute() 
+PASS form.method: IDL set to &quot;ost&quot; followed by IDL get 
+PASS form.method: IDL set to &quot;POST&quot; should not throw 
+PASS form.method: IDL set to &quot;POST&quot; followed by getAttribute() 
+PASS form.method: IDL set to &quot;POST&quot; followed by IDL get 
+PASS form.method: IDL set to &quot;dialog&quot; should not throw 
+PASS form.method: IDL set to &quot;dialog&quot; followed by getAttribute() 
+FAIL form.method: IDL set to &quot;dialog&quot; followed by IDL get assert_equals: expected &quot;dialog&quot; but got &quot;get&quot;
+PASS form.method: IDL set to &quot;xdialog&quot; should not throw 
+PASS form.method: IDL set to &quot;xdialog&quot; followed by getAttribute() 
+PASS form.method: IDL set to &quot;xdialog&quot; followed by IDL get 
+PASS form.method: IDL set to &quot;dialog\0&quot; should not throw 
+PASS form.method: IDL set to &quot;dialog\0&quot; followed by getAttribute() 
+PASS form.method: IDL set to &quot;dialog\0&quot; followed by IDL get 
+PASS form.method: IDL set to &quot;ialog&quot; should not throw 
+PASS form.method: IDL set to &quot;ialog&quot; followed by getAttribute() 
+PASS form.method: IDL set to &quot;ialog&quot; followed by IDL get 
+PASS form.method: IDL set to &quot;DIALOG&quot; should not throw 
+PASS form.method: IDL set to &quot;DIALOG&quot; followed by getAttribute() 
+FAIL form.method: IDL set to &quot;DIALOG&quot; followed by IDL get assert_equals: expected &quot;dialog&quot; but got &quot;get&quot;
+PASS form.name: typeof IDL attribute 
+PASS form.name: IDL get with DOM attribute unset 
+PASS form.name: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS form.name: setAttribute() to &quot;&quot; followed by IDL get 
+PASS form.name: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS form.name: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS form.name: setAttribute() to undefined followed by getAttribute() 
+PASS form.name: setAttribute() to undefined followed by IDL get 
+PASS form.name: setAttribute() to 7 followed by getAttribute() 
+PASS form.name: setAttribute() to 7 followed by IDL get 
+PASS form.name: setAttribute() to 1.5 followed by getAttribute() 
+PASS form.name: setAttribute() to 1.5 followed by IDL get 
+PASS form.name: setAttribute() to true followed by getAttribute() 
+PASS form.name: setAttribute() to true followed by IDL get 
+PASS form.name: setAttribute() to false followed by getAttribute() 
+PASS form.name: setAttribute() to false followed by IDL get 
+PASS form.name: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS form.name: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.name: setAttribute() to NaN followed by getAttribute() 
+PASS form.name: setAttribute() to NaN followed by IDL get 
+PASS form.name: setAttribute() to Infinity followed by getAttribute() 
+PASS form.name: setAttribute() to Infinity followed by IDL get 
+PASS form.name: setAttribute() to -Infinity followed by getAttribute() 
+PASS form.name: setAttribute() to -Infinity followed by IDL get 
+PASS form.name: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS form.name: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS form.name: setAttribute() to null followed by getAttribute() 
+PASS form.name: setAttribute() to null followed by IDL get 
+PASS form.name: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS form.name: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS form.name: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS form.name: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS form.name: IDL set to &quot;&quot; should not throw 
+PASS form.name: IDL set to &quot;&quot; followed by getAttribute() 
+PASS form.name: IDL set to &quot;&quot; followed by IDL get 
+PASS form.name: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS form.name: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS form.name: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS form.name: IDL set to undefined should not throw 
+PASS form.name: IDL set to undefined followed by getAttribute() 
+PASS form.name: IDL set to undefined followed by IDL get 
+PASS form.name: IDL set to 7 should not throw 
+PASS form.name: IDL set to 7 followed by getAttribute() 
+PASS form.name: IDL set to 7 followed by IDL get 
+PASS form.name: IDL set to 1.5 should not throw 
+PASS form.name: IDL set to 1.5 followed by getAttribute() 
+PASS form.name: IDL set to 1.5 followed by IDL get 
+PASS form.name: IDL set to true should not throw 
+PASS form.name: IDL set to true followed by getAttribute() 
+PASS form.name: IDL set to true followed by IDL get 
+PASS form.name: IDL set to false should not throw 
+PASS form.name: IDL set to false followed by getAttribute() 
+PASS form.name: IDL set to false followed by IDL get 
+PASS form.name: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS form.name: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS form.name: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.name: IDL set to NaN should not throw 
+PASS form.name: IDL set to NaN followed by getAttribute() 
+PASS form.name: IDL set to NaN followed by IDL get 
+PASS form.name: IDL set to Infinity should not throw 
+PASS form.name: IDL set to Infinity followed by getAttribute() 
+PASS form.name: IDL set to Infinity followed by IDL get 
+PASS form.name: IDL set to -Infinity should not throw 
+PASS form.name: IDL set to -Infinity followed by getAttribute() 
+PASS form.name: IDL set to -Infinity followed by IDL get 
+PASS form.name: IDL set to &quot;\0&quot; should not throw 
+PASS form.name: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS form.name: IDL set to &quot;\0&quot; followed by IDL get 
+PASS form.name: IDL set to null should not throw 
+PASS form.name: IDL set to null followed by getAttribute() 
+PASS form.name: IDL set to null followed by IDL get 
+PASS form.name: IDL set to object &quot;test-toString&quot; should not throw 
+PASS form.name: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS form.name: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS form.name: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS form.name: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS form.name: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS form.noValidate: typeof IDL attribute 
+PASS form.noValidate: IDL get with DOM attribute unset 
+PASS form.noValidate: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS form.noValidate: setAttribute() to &quot;&quot; followed by IDL get 
+PASS form.noValidate: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS form.noValidate: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS form.noValidate: setAttribute() to undefined followed by getAttribute() 
+PASS form.noValidate: setAttribute() to undefined followed by IDL get 
+PASS form.noValidate: setAttribute() to null followed by getAttribute() 
+PASS form.noValidate: setAttribute() to null followed by IDL get 
+PASS form.noValidate: setAttribute() to 7 followed by getAttribute() 
+PASS form.noValidate: setAttribute() to 7 followed by IDL get 
+PASS form.noValidate: setAttribute() to 1.5 followed by getAttribute() 
+PASS form.noValidate: setAttribute() to 1.5 followed by IDL get 
+PASS form.noValidate: setAttribute() to true followed by getAttribute() 
+PASS form.noValidate: setAttribute() to true followed by IDL get 
+PASS form.noValidate: setAttribute() to false followed by getAttribute() 
+PASS form.noValidate: setAttribute() to false followed by IDL get 
+PASS form.noValidate: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS form.noValidate: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.noValidate: setAttribute() to NaN followed by getAttribute() 
+PASS form.noValidate: setAttribute() to NaN followed by IDL get 
+PASS form.noValidate: setAttribute() to Infinity followed by getAttribute() 
+PASS form.noValidate: setAttribute() to Infinity followed by IDL get 
+PASS form.noValidate: setAttribute() to -Infinity followed by getAttribute() 
+PASS form.noValidate: setAttribute() to -Infinity followed by IDL get 
+PASS form.noValidate: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS form.noValidate: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS form.noValidate: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS form.noValidate: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS form.noValidate: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS form.noValidate: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS form.noValidate: setAttribute() to &quot;noValidate&quot; followed by getAttribute() 
+PASS form.noValidate: setAttribute() to &quot;noValidate&quot; followed by IDL get 
+PASS form.noValidate: IDL set to &quot;&quot; should not throw 
+PASS form.noValidate: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS form.noValidate: IDL set to &quot;&quot; followed by IDL get 
+PASS form.noValidate: IDL set to &quot; foo &quot; should not throw 
+PASS form.noValidate: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS form.noValidate: IDL set to &quot; foo &quot; followed by IDL get 
+PASS form.noValidate: IDL set to undefined should not throw 
+PASS form.noValidate: IDL set to undefined followed by hasAttribute() 
+PASS form.noValidate: IDL set to undefined followed by IDL get 
+PASS form.noValidate: IDL set to null should not throw 
+PASS form.noValidate: IDL set to null followed by hasAttribute() 
+PASS form.noValidate: IDL set to null followed by IDL get 
+PASS form.noValidate: IDL set to 7 should not throw 
+PASS form.noValidate: IDL set to 7 followed by hasAttribute() 
+PASS form.noValidate: IDL set to 7 followed by IDL get 
+PASS form.noValidate: IDL set to 1.5 should not throw 
+PASS form.noValidate: IDL set to 1.5 followed by hasAttribute() 
+PASS form.noValidate: IDL set to 1.5 followed by IDL get 
+PASS form.noValidate: IDL set to true should not throw 
+PASS form.noValidate: IDL set to true followed by hasAttribute() 
+PASS form.noValidate: IDL set to true followed by IDL get 
+PASS form.noValidate: IDL set to false should not throw 
+PASS form.noValidate: IDL set to false followed by hasAttribute() 
+PASS form.noValidate: IDL set to false followed by IDL get 
+PASS form.noValidate: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS form.noValidate: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS form.noValidate: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.noValidate: IDL set to NaN should not throw 
+PASS form.noValidate: IDL set to NaN followed by hasAttribute() 
+PASS form.noValidate: IDL set to NaN followed by IDL get 
+PASS form.noValidate: IDL set to Infinity should not throw 
+PASS form.noValidate: IDL set to Infinity followed by hasAttribute() 
+PASS form.noValidate: IDL set to Infinity followed by IDL get 
+PASS form.noValidate: IDL set to -Infinity should not throw 
+PASS form.noValidate: IDL set to -Infinity followed by hasAttribute() 
+PASS form.noValidate: IDL set to -Infinity followed by IDL get 
+PASS form.noValidate: IDL set to &quot;\0&quot; should not throw 
+PASS form.noValidate: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS form.noValidate: IDL set to &quot;\0&quot; followed by IDL get 
+PASS form.noValidate: IDL set to object &quot;test-toString&quot; should not throw 
+PASS form.noValidate: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS form.noValidate: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS form.noValidate: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS form.noValidate: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS form.noValidate: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS form.target: typeof IDL attribute 
+PASS form.target: IDL get with DOM attribute unset 
+PASS form.target: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS form.target: setAttribute() to &quot;&quot; followed by IDL get 
+PASS form.target: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS form.target: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS form.target: setAttribute() to undefined followed by getAttribute() 
+PASS form.target: setAttribute() to undefined followed by IDL get 
+PASS form.target: setAttribute() to 7 followed by getAttribute() 
+PASS form.target: setAttribute() to 7 followed by IDL get 
+PASS form.target: setAttribute() to 1.5 followed by getAttribute() 
+PASS form.target: setAttribute() to 1.5 followed by IDL get 
+PASS form.target: setAttribute() to true followed by getAttribute() 
+PASS form.target: setAttribute() to true followed by IDL get 
+PASS form.target: setAttribute() to false followed by getAttribute() 
+PASS form.target: setAttribute() to false followed by IDL get 
+PASS form.target: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS form.target: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.target: setAttribute() to NaN followed by getAttribute() 
+PASS form.target: setAttribute() to NaN followed by IDL get 
+PASS form.target: setAttribute() to Infinity followed by getAttribute() 
+PASS form.target: setAttribute() to Infinity followed by IDL get 
+PASS form.target: setAttribute() to -Infinity followed by getAttribute() 
+PASS form.target: setAttribute() to -Infinity followed by IDL get 
+PASS form.target: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS form.target: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS form.target: setAttribute() to null followed by getAttribute() 
+PASS form.target: setAttribute() to null followed by IDL get 
+PASS form.target: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS form.target: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS form.target: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS form.target: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS form.target: IDL set to &quot;&quot; should not throw 
+PASS form.target: IDL set to &quot;&quot; followed by getAttribute() 
+PASS form.target: IDL set to &quot;&quot; followed by IDL get 
+PASS form.target: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS form.target: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS form.target: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS form.target: IDL set to undefined should not throw 
+PASS form.target: IDL set to undefined followed by getAttribute() 
+PASS form.target: IDL set to undefined followed by IDL get 
+PASS form.target: IDL set to 7 should not throw 
+PASS form.target: IDL set to 7 followed by getAttribute() 
+PASS form.target: IDL set to 7 followed by IDL get 
+PASS form.target: IDL set to 1.5 should not throw 
+PASS form.target: IDL set to 1.5 followed by getAttribute() 
+PASS form.target: IDL set to 1.5 followed by IDL get 
+PASS form.target: IDL set to true should not throw 
+PASS form.target: IDL set to true followed by getAttribute() 
+PASS form.target: IDL set to true followed by IDL get 
+PASS form.target: IDL set to false should not throw 
+PASS form.target: IDL set to false followed by getAttribute() 
+PASS form.target: IDL set to false followed by IDL get 
+PASS form.target: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS form.target: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS form.target: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS form.target: IDL set to NaN should not throw 
+PASS form.target: IDL set to NaN followed by getAttribute() 
+PASS form.target: IDL set to NaN followed by IDL get 
+PASS form.target: IDL set to Infinity should not throw 
+PASS form.target: IDL set to Infinity followed by getAttribute() 
+PASS form.target: IDL set to Infinity followed by IDL get 
+PASS form.target: IDL set to -Infinity should not throw 
+PASS form.target: IDL set to -Infinity followed by getAttribute() 
+PASS form.target: IDL set to -Infinity followed by IDL get 
+PASS form.target: IDL set to &quot;\0&quot; should not throw 
+PASS form.target: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS form.target: IDL set to &quot;\0&quot; followed by IDL get 
+PASS form.target: IDL set to null should not throw 
+PASS form.target: IDL set to null followed by getAttribute() 
+PASS form.target: IDL set to null followed by IDL get 
+PASS form.target: IDL set to object &quot;test-toString&quot; should not throw 
+PASS form.target: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS form.target: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS form.target: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS form.target: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS form.target: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS fieldset.title: typeof IDL attribute 
+PASS fieldset.title: IDL get with DOM attribute unset 
+PASS fieldset.title: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS fieldset.title: setAttribute() to &quot;&quot; followed by IDL get 
+PASS fieldset.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS fieldset.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS fieldset.title: setAttribute() to undefined followed by getAttribute() 
+PASS fieldset.title: setAttribute() to undefined followed by IDL get 
+PASS fieldset.title: setAttribute() to 7 followed by getAttribute() 
+PASS fieldset.title: setAttribute() to 7 followed by IDL get 
+PASS fieldset.title: setAttribute() to 1.5 followed by getAttribute() 
+PASS fieldset.title: setAttribute() to 1.5 followed by IDL get 
+PASS fieldset.title: setAttribute() to true followed by getAttribute() 
+PASS fieldset.title: setAttribute() to true followed by IDL get 
+PASS fieldset.title: setAttribute() to false followed by getAttribute() 
+PASS fieldset.title: setAttribute() to false followed by IDL get 
+PASS fieldset.title: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS fieldset.title: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS fieldset.title: setAttribute() to NaN followed by getAttribute() 
+PASS fieldset.title: setAttribute() to NaN followed by IDL get 
+PASS fieldset.title: setAttribute() to Infinity followed by getAttribute() 
+PASS fieldset.title: setAttribute() to Infinity followed by IDL get 
+PASS fieldset.title: setAttribute() to -Infinity followed by getAttribute() 
+PASS fieldset.title: setAttribute() to -Infinity followed by IDL get 
+PASS fieldset.title: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS fieldset.title: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS fieldset.title: setAttribute() to null followed by getAttribute() 
+PASS fieldset.title: setAttribute() to null followed by IDL get 
+PASS fieldset.title: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS fieldset.title: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS fieldset.title: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS fieldset.title: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS fieldset.title: IDL set to &quot;&quot; should not throw 
+PASS fieldset.title: IDL set to &quot;&quot; followed by getAttribute() 
+PASS fieldset.title: IDL set to &quot;&quot; followed by IDL get 
+PASS fieldset.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS fieldset.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS fieldset.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS fieldset.title: IDL set to undefined should not throw 
+PASS fieldset.title: IDL set to undefined followed by getAttribute() 
+PASS fieldset.title: IDL set to undefined followed by IDL get 
+PASS fieldset.title: IDL set to 7 should not throw 
+PASS fieldset.title: IDL set to 7 followed by getAttribute() 
+PASS fieldset.title: IDL set to 7 followed by IDL get 
+PASS fieldset.title: IDL set to 1.5 should not throw 
+PASS fieldset.title: IDL set to 1.5 followed by getAttribute() 
+PASS fieldset.title: IDL set to 1.5 followed by IDL get 
+PASS fieldset.title: IDL set to true should not throw 
+PASS fieldset.title: IDL set to true followed by getAttribute() 
+PASS fieldset.title: IDL set to true followed by IDL get 
+PASS fieldset.title: IDL set to false should not throw 
+PASS fieldset.title: IDL set to false followed by getAttribute() 
+PASS fieldset.title: IDL set to false followed by IDL get 
+PASS fieldset.title: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS fieldset.title: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS fieldset.title: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS fieldset.title: IDL set to NaN should not throw 
+PASS fieldset.title: IDL set to NaN followed by getAttribute() 
+PASS fieldset.title: IDL set to NaN followed by IDL get 
+PASS fieldset.title: IDL set to Infinity should not throw 
+PASS fieldset.title: IDL set to Infinity followed by getAttribute() 
+PASS fieldset.title: IDL set to Infinity followed by IDL get 
+PASS fieldset.title: IDL set to -Infinity should not throw 
+PASS fieldset.title: IDL set to -Infinity followed by getAttribute() 
+PASS fieldset.title: IDL set to -Infinity followed by IDL get 
+PASS fieldset.title: IDL set to &quot;\0&quot; should not throw 
+PASS fieldset.title: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS fieldset.title: IDL set to &quot;\0&quot; followed by IDL get 
+PASS fieldset.title: IDL set to null should not throw 
+PASS fieldset.title: IDL set to null followed by getAttribute() 
+PASS fieldset.title: IDL set to null followed by IDL get 
+PASS fieldset.title: IDL set to object &quot;test-toString&quot; should not throw 
+PASS fieldset.title: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS fieldset.title: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS fieldset.title: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS fieldset.title: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS fieldset.title: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS fieldset.lang: typeof IDL attribute 
+PASS fieldset.lang: IDL get with DOM attribute unset 
+PASS fieldset.lang: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS fieldset.lang: setAttribute() to &quot;&quot; followed by IDL get 
+PASS fieldset.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS fieldset.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS fieldset.lang: setAttribute() to undefined followed by getAttribute() 
+PASS fieldset.lang: setAttribute() to undefined followed by IDL get 
+PASS fieldset.lang: setAttribute() to 7 followed by getAttribute() 
+PASS fieldset.lang: setAttribute() to 7 followed by IDL get 
+PASS fieldset.lang: setAttribute() to 1.5 followed by getAttribute() 
+PASS fieldset.lang: setAttribute() to 1.5 followed by IDL get 
+PASS fieldset.lang: setAttribute() to true followed by getAttribute() 
+PASS fieldset.lang: setAttribute() to true followed by IDL get 
+PASS fieldset.lang: setAttribute() to false followed by getAttribute() 
+PASS fieldset.lang: setAttribute() to false followed by IDL get 
+PASS fieldset.lang: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS fieldset.lang: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS fieldset.lang: setAttribute() to NaN followed by getAttribute() 
+PASS fieldset.lang: setAttribute() to NaN followed by IDL get 
+PASS fieldset.lang: setAttribute() to Infinity followed by getAttribute() 
+PASS fieldset.lang: setAttribute() to Infinity followed by IDL get 
+PASS fieldset.lang: setAttribute() to -Infinity followed by getAttribute() 
+PASS fieldset.lang: setAttribute() to -Infinity followed by IDL get 
+PASS fieldset.lang: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS fieldset.lang: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS fieldset.lang: setAttribute() to null followed by getAttribute() 
+PASS fieldset.lang: setAttribute() to null followed by IDL get 
+PASS fieldset.lang: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS fieldset.lang: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS fieldset.lang: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS fieldset.lang: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS fieldset.lang: IDL set to &quot;&quot; should not throw 
+PASS fieldset.lang: IDL set to &quot;&quot; followed by getAttribute() 
+PASS fieldset.lang: IDL set to &quot;&quot; followed by IDL get 
+PASS fieldset.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS fieldset.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS fieldset.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS fieldset.lang: IDL set to undefined should not throw 
+PASS fieldset.lang: IDL set to undefined followed by getAttribute() 
+PASS fieldset.lang: IDL set to undefined followed by IDL get 
+PASS fieldset.lang: IDL set to 7 should not throw 
+PASS fieldset.lang: IDL set to 7 followed by getAttribute() 
+PASS fieldset.lang: IDL set to 7 followed by IDL get 
+PASS fieldset.lang: IDL set to 1.5 should not throw 
+PASS fieldset.lang: IDL set to 1.5 followed by getAttribute() 
+PASS fieldset.lang: IDL set to 1.5 followed by IDL get 
+PASS fieldset.lang: IDL set to true should not throw 
+PASS fieldset.lang: IDL set to true followed by getAttribute() 
+PASS fieldset.lang: IDL set to true followed by IDL get 
+PASS fieldset.lang: IDL set to false should not throw 
+PASS fieldset.lang: IDL set to false followed by getAttribute() 
+PASS fieldset.lang: IDL set to false followed by IDL get 
+PASS fieldset.lang: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS fieldset.lang: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS fieldset.lang: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS fieldset.lang: IDL set to NaN should not throw 
+PASS fieldset.lang: IDL set to NaN followed by getAttribute() 
+PASS fieldset.lang: IDL set to NaN followed by IDL get 
+PASS fieldset.lang: IDL set to Infinity should not throw 
+PASS fieldset.lang: IDL set to Infinity followed by getAttribute() 
+PASS fieldset.lang: IDL set to Infinity followed by IDL get 
+PASS fieldset.lang: IDL set to -Infinity should not throw 
+PASS fieldset.lang: IDL set to -Infinity followed by getAttribute() 
+PASS fieldset.lang: IDL set to -Infinity followed by IDL get 
+PASS fieldset.lang: IDL set to &quot;\0&quot; should not throw 
+PASS fieldset.lang: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS fieldset.lang: IDL set to &quot;\0&quot; followed by IDL get 
+PASS fieldset.lang: IDL set to null should not throw 
+PASS fieldset.lang: IDL set to null followed by getAttribute() 
+PASS fieldset.lang: IDL set to null followed by IDL get 
+PASS fieldset.lang: IDL set to object &quot;test-toString&quot; should not throw 
+PASS fieldset.lang: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS fieldset.lang: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS fieldset.lang: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS fieldset.lang: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS fieldset.lang: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS fieldset.dir: typeof IDL attribute 
+PASS fieldset.dir: IDL get with DOM attribute unset 
+PASS fieldset.dir: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to &quot;&quot; followed by IDL get 
+PASS fieldset.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS fieldset.dir: setAttribute() to undefined followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to undefined followed by IDL get 
+PASS fieldset.dir: setAttribute() to 7 followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to 7 followed by IDL get 
+PASS fieldset.dir: setAttribute() to 1.5 followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to 1.5 followed by IDL get 
+PASS fieldset.dir: setAttribute() to true followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to true followed by IDL get 
+PASS fieldset.dir: setAttribute() to false followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to false followed by IDL get 
+PASS fieldset.dir: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS fieldset.dir: setAttribute() to NaN followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to NaN followed by IDL get 
+PASS fieldset.dir: setAttribute() to Infinity followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to Infinity followed by IDL get 
+PASS fieldset.dir: setAttribute() to -Infinity followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to -Infinity followed by IDL get 
+PASS fieldset.dir: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS fieldset.dir: setAttribute() to null followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to null followed by IDL get 
+PASS fieldset.dir: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS fieldset.dir: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS fieldset.dir: setAttribute() to &quot;ltr&quot; followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to &quot;ltr&quot; followed by IDL get 
+PASS fieldset.dir: setAttribute() to &quot;xltr&quot; followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to &quot;xltr&quot; followed by IDL get 
+PASS fieldset.dir: setAttribute() to &quot;ltr\0&quot; followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to &quot;ltr\0&quot; followed by IDL get 
+PASS fieldset.dir: setAttribute() to &quot;tr&quot; followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to &quot;tr&quot; followed by IDL get 
+PASS fieldset.dir: setAttribute() to &quot;LTR&quot; followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to &quot;LTR&quot; followed by IDL get 
+PASS fieldset.dir: setAttribute() to &quot;rtl&quot; followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to &quot;rtl&quot; followed by IDL get 
+PASS fieldset.dir: setAttribute() to &quot;xrtl&quot; followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to &quot;xrtl&quot; followed by IDL get 
+PASS fieldset.dir: setAttribute() to &quot;rtl\0&quot; followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to &quot;rtl\0&quot; followed by IDL get 
+PASS fieldset.dir: setAttribute() to &quot;tl&quot; followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to &quot;tl&quot; followed by IDL get 
+PASS fieldset.dir: setAttribute() to &quot;RTL&quot; followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to &quot;RTL&quot; followed by IDL get 
+PASS fieldset.dir: setAttribute() to &quot;auto&quot; followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to &quot;auto&quot; followed by IDL get 
+PASS fieldset.dir: setAttribute() to &quot;xauto&quot; followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to &quot;xauto&quot; followed by IDL get 
+PASS fieldset.dir: setAttribute() to &quot;auto\0&quot; followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to &quot;auto\0&quot; followed by IDL get 
+PASS fieldset.dir: setAttribute() to &quot;uto&quot; followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to &quot;uto&quot; followed by IDL get 
+PASS fieldset.dir: setAttribute() to &quot;AUTO&quot; followed by getAttribute() 
+PASS fieldset.dir: setAttribute() to &quot;AUTO&quot; followed by IDL get 
+PASS fieldset.dir: IDL set to &quot;&quot; should not throw 
+PASS fieldset.dir: IDL set to &quot;&quot; followed by getAttribute() 
+PASS fieldset.dir: IDL set to &quot;&quot; followed by IDL get 
+PASS fieldset.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS fieldset.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS fieldset.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS fieldset.dir: IDL set to undefined should not throw 
+PASS fieldset.dir: IDL set to undefined followed by getAttribute() 
+PASS fieldset.dir: IDL set to undefined followed by IDL get 
+PASS fieldset.dir: IDL set to 7 should not throw 
+PASS fieldset.dir: IDL set to 7 followed by getAttribute() 
+PASS fieldset.dir: IDL set to 7 followed by IDL get 
+PASS fieldset.dir: IDL set to 1.5 should not throw 
+PASS fieldset.dir: IDL set to 1.5 followed by getAttribute() 
+PASS fieldset.dir: IDL set to 1.5 followed by IDL get 
+PASS fieldset.dir: IDL set to true should not throw 
+PASS fieldset.dir: IDL set to true followed by getAttribute() 
+PASS fieldset.dir: IDL set to true followed by IDL get 
+PASS fieldset.dir: IDL set to false should not throw 
+PASS fieldset.dir: IDL set to false followed by getAttribute() 
+PASS fieldset.dir: IDL set to false followed by IDL get 
+PASS fieldset.dir: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS fieldset.dir: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS fieldset.dir: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS fieldset.dir: IDL set to NaN should not throw 
+PASS fieldset.dir: IDL set to NaN followed by getAttribute() 
+PASS fieldset.dir: IDL set to NaN followed by IDL get 
+PASS fieldset.dir: IDL set to Infinity should not throw 
+PASS fieldset.dir: IDL set to Infinity followed by getAttribute() 
+PASS fieldset.dir: IDL set to Infinity followed by IDL get 
+PASS fieldset.dir: IDL set to -Infinity should not throw 
+PASS fieldset.dir: IDL set to -Infinity followed by getAttribute() 
+PASS fieldset.dir: IDL set to -Infinity followed by IDL get 
+PASS fieldset.dir: IDL set to &quot;\0&quot; should not throw 
+PASS fieldset.dir: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS fieldset.dir: IDL set to &quot;\0&quot; followed by IDL get 
+PASS fieldset.dir: IDL set to null should not throw 
+PASS fieldset.dir: IDL set to null followed by IDL get 
+PASS fieldset.dir: IDL set to object &quot;test-toString&quot; should not throw 
+PASS fieldset.dir: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS fieldset.dir: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS fieldset.dir: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS fieldset.dir: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS fieldset.dir: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS fieldset.dir: IDL set to &quot;ltr&quot; should not throw 
+PASS fieldset.dir: IDL set to &quot;ltr&quot; followed by getAttribute() 
+PASS fieldset.dir: IDL set to &quot;ltr&quot; followed by IDL get 
+PASS fieldset.dir: IDL set to &quot;xltr&quot; should not throw 
+PASS fieldset.dir: IDL set to &quot;xltr&quot; followed by getAttribute() 
+PASS fieldset.dir: IDL set to &quot;xltr&quot; followed by IDL get 
+PASS fieldset.dir: IDL set to &quot;ltr\0&quot; should not throw 
+PASS fieldset.dir: IDL set to &quot;ltr\0&quot; followed by getAttribute() 
+PASS fieldset.dir: IDL set to &quot;ltr\0&quot; followed by IDL get 
+PASS fieldset.dir: IDL set to &quot;tr&quot; should not throw 
+PASS fieldset.dir: IDL set to &quot;tr&quot; followed by getAttribute() 
+PASS fieldset.dir: IDL set to &quot;tr&quot; followed by IDL get 
+PASS fieldset.dir: IDL set to &quot;LTR&quot; should not throw 
+PASS fieldset.dir: IDL set to &quot;LTR&quot; followed by getAttribute() 
+PASS fieldset.dir: IDL set to &quot;LTR&quot; followed by IDL get 
+PASS fieldset.dir: IDL set to &quot;rtl&quot; should not throw 
+PASS fieldset.dir: IDL set to &quot;rtl&quot; followed by getAttribute() 
+PASS fieldset.dir: IDL set to &quot;rtl&quot; followed by IDL get 
+PASS fieldset.dir: IDL set to &quot;xrtl&quot; should not throw 
+PASS fieldset.dir: IDL set to &quot;xrtl&quot; followed by getAttribute() 
+PASS fieldset.dir: IDL set to &quot;xrtl&quot; followed by IDL get 
+PASS fieldset.dir: IDL set to &quot;rtl\0&quot; should not throw 
+PASS fieldset.dir: IDL set to &quot;rtl\0&quot; followed by getAttribute() 
+PASS fieldset.dir: IDL set to &quot;rtl\0&quot; followed by IDL get 
+PASS fieldset.dir: IDL set to &quot;tl&quot; should not throw 
+PASS fieldset.dir: IDL set to &quot;tl&quot; followed by getAttribute() 
+PASS fieldset.dir: IDL set to &quot;tl&quot; followed by IDL get 
+PASS fieldset.dir: IDL set to &quot;RTL&quot; should not throw 
+PASS fieldset.dir: IDL set to &quot;RTL&quot; followed by getAttribute() 
+PASS fieldset.dir: IDL set to &quot;RTL&quot; followed by IDL get 
+PASS fieldset.dir: IDL set to &quot;auto&quot; should not throw 
+PASS fieldset.dir: IDL set to &quot;auto&quot; followed by getAttribute() 
+PASS fieldset.dir: IDL set to &quot;auto&quot; followed by IDL get 
+PASS fieldset.dir: IDL set to &quot;xauto&quot; should not throw 
+PASS fieldset.dir: IDL set to &quot;xauto&quot; followed by getAttribute() 
+PASS fieldset.dir: IDL set to &quot;xauto&quot; followed by IDL get 
+PASS fieldset.dir: IDL set to &quot;auto\0&quot; should not throw 
+PASS fieldset.dir: IDL set to &quot;auto\0&quot; followed by getAttribute() 
+PASS fieldset.dir: IDL set to &quot;auto\0&quot; followed by IDL get 
+PASS fieldset.dir: IDL set to &quot;uto&quot; should not throw 
+PASS fieldset.dir: IDL set to &quot;uto&quot; followed by getAttribute() 
+PASS fieldset.dir: IDL set to &quot;uto&quot; followed by IDL get 
+PASS fieldset.dir: IDL set to &quot;AUTO&quot; should not throw 
+PASS fieldset.dir: IDL set to &quot;AUTO&quot; followed by getAttribute() 
+PASS fieldset.dir: IDL set to &quot;AUTO&quot; followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): typeof IDL attribute 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL get with DOM attribute unset 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to &quot;&quot; followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to undefined followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to undefined followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to 7 followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to 7 followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to 1.5 followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to 1.5 followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to true followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to true followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to false followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to false followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to NaN followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to NaN followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to Infinity followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to Infinity followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to -Infinity followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to -Infinity followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to null followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to null followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to &quot;&quot; should not throw 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to &quot;&quot; followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to &quot;&quot; followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to undefined should not throw 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to undefined followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to undefined followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to 7 should not throw 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to 7 followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to 7 followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to 1.5 should not throw 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to 1.5 followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to 1.5 followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to true should not throw 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to true followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to true followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to false should not throw 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to false followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to false followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to object &quot;[object Object]&quot; should not throw 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to NaN should not throw 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to NaN followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to NaN followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to Infinity should not throw 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to Infinity followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to Infinity followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to -Infinity should not throw 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to -Infinity followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to -Infinity followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to &quot;\0&quot; should not throw 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to &quot;\0&quot; followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to null should not throw 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to null followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to null followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to object &quot;test-toString&quot; should not throw 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS fieldset.className (&lt;fieldset class&gt;): IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS fieldset.hidden: typeof IDL attribute 
+PASS fieldset.hidden: IDL get with DOM attribute unset 
+PASS fieldset.hidden: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS fieldset.hidden: setAttribute() to &quot;&quot; followed by IDL get 
+PASS fieldset.hidden: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS fieldset.hidden: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS fieldset.hidden: setAttribute() to undefined followed by getAttribute() 
+PASS fieldset.hidden: setAttribute() to undefined followed by IDL get 
+PASS fieldset.hidden: setAttribute() to null followed by getAttribute() 
+PASS fieldset.hidden: setAttribute() to null followed by IDL get 
+PASS fieldset.hidden: setAttribute() to 7 followed by getAttribute() 
+PASS fieldset.hidden: setAttribute() to 7 followed by IDL get 
+PASS fieldset.hidden: setAttribute() to 1.5 followed by getAttribute() 
+PASS fieldset.hidden: setAttribute() to 1.5 followed by IDL get 
+PASS fieldset.hidden: setAttribute() to true followed by getAttribute() 
+PASS fieldset.hidden: setAttribute() to true followed by IDL get 
+PASS fieldset.hidden: setAttribute() to false followed by getAttribute() 
+PASS fieldset.hidden: setAttribute() to false followed by IDL get 
+PASS fieldset.hidden: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS fieldset.hidden: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS fieldset.hidden: setAttribute() to NaN followed by getAttribute() 
+PASS fieldset.hidden: setAttribute() to NaN followed by IDL get 
+PASS fieldset.hidden: setAttribute() to Infinity followed by getAttribute() 
+PASS fieldset.hidden: setAttribute() to Infinity followed by IDL get 
+PASS fieldset.hidden: setAttribute() to -Infinity followed by getAttribute() 
+PASS fieldset.hidden: setAttribute() to -Infinity followed by IDL get 
+PASS fieldset.hidden: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS fieldset.hidden: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS fieldset.hidden: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS fieldset.hidden: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS fieldset.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS fieldset.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS fieldset.hidden: setAttribute() to &quot;hidden&quot; followed by getAttribute() 
+PASS fieldset.hidden: setAttribute() to &quot;hidden&quot; followed by IDL get 
+PASS fieldset.hidden: IDL set to &quot;&quot; should not throw 
+PASS fieldset.hidden: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS fieldset.hidden: IDL set to &quot;&quot; followed by IDL get 
+PASS fieldset.hidden: IDL set to &quot; foo &quot; should not throw 
+PASS fieldset.hidden: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS fieldset.hidden: IDL set to &quot; foo &quot; followed by IDL get 
+PASS fieldset.hidden: IDL set to undefined should not throw 
+PASS fieldset.hidden: IDL set to undefined followed by hasAttribute() 
+PASS fieldset.hidden: IDL set to undefined followed by IDL get 
+PASS fieldset.hidden: IDL set to null should not throw 
+PASS fieldset.hidden: IDL set to null followed by hasAttribute() 
+PASS fieldset.hidden: IDL set to null followed by IDL get 
+PASS fieldset.hidden: IDL set to 7 should not throw 
+PASS fieldset.hidden: IDL set to 7 followed by hasAttribute() 
+PASS fieldset.hidden: IDL set to 7 followed by IDL get 
+PASS fieldset.hidden: IDL set to 1.5 should not throw 
+PASS fieldset.hidden: IDL set to 1.5 followed by hasAttribute() 
+PASS fieldset.hidden: IDL set to 1.5 followed by IDL get 
+PASS fieldset.hidden: IDL set to true should not throw 
+PASS fieldset.hidden: IDL set to true followed by hasAttribute() 
+PASS fieldset.hidden: IDL set to true followed by IDL get 
+PASS fieldset.hidden: IDL set to false should not throw 
+PASS fieldset.hidden: IDL set to false followed by hasAttribute() 
+PASS fieldset.hidden: IDL set to false followed by IDL get 
+PASS fieldset.hidden: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS fieldset.hidden: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS fieldset.hidden: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS fieldset.hidden: IDL set to NaN should not throw 
+PASS fieldset.hidden: IDL set to NaN followed by hasAttribute() 
+PASS fieldset.hidden: IDL set to NaN followed by IDL get 
+PASS fieldset.hidden: IDL set to Infinity should not throw 
+PASS fieldset.hidden: IDL set to Infinity followed by hasAttribute() 
+PASS fieldset.hidden: IDL set to Infinity followed by IDL get 
+PASS fieldset.hidden: IDL set to -Infinity should not throw 
+PASS fieldset.hidden: IDL set to -Infinity followed by hasAttribute() 
+PASS fieldset.hidden: IDL set to -Infinity followed by IDL get 
+PASS fieldset.hidden: IDL set to &quot;\0&quot; should not throw 
+PASS fieldset.hidden: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS fieldset.hidden: IDL set to &quot;\0&quot; followed by IDL get 
+PASS fieldset.hidden: IDL set to object &quot;test-toString&quot; should not throw 
+PASS fieldset.hidden: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS fieldset.hidden: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS fieldset.hidden: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS fieldset.hidden: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS fieldset.hidden: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS fieldset.accessKey: typeof IDL attribute 
+PASS fieldset.accessKey: IDL get with DOM attribute unset 
+PASS fieldset.accessKey: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS fieldset.accessKey: setAttribute() to &quot;&quot; followed by IDL get 
+PASS fieldset.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS fieldset.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS fieldset.accessKey: setAttribute() to undefined followed by getAttribute() 
+PASS fieldset.accessKey: setAttribute() to undefined followed by IDL get 
+PASS fieldset.accessKey: setAttribute() to 7 followed by getAttribute() 
+PASS fieldset.accessKey: setAttribute() to 7 followed by IDL get 
+PASS fieldset.accessKey: setAttribute() to 1.5 followed by getAttribute() 
+PASS fieldset.accessKey: setAttribute() to 1.5 followed by IDL get 
+PASS fieldset.accessKey: setAttribute() to true followed by getAttribute() 
+PASS fieldset.accessKey: setAttribute() to true followed by IDL get 
+PASS fieldset.accessKey: setAttribute() to false followed by getAttribute() 
+PASS fieldset.accessKey: setAttribute() to false followed by IDL get 
+PASS fieldset.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS fieldset.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS fieldset.accessKey: setAttribute() to NaN followed by getAttribute() 
+PASS fieldset.accessKey: setAttribute() to NaN followed by IDL get 
+PASS fieldset.accessKey: setAttribute() to Infinity followed by getAttribute() 
+PASS fieldset.accessKey: setAttribute() to Infinity followed by IDL get 
+PASS fieldset.accessKey: setAttribute() to -Infinity followed by getAttribute() 
+PASS fieldset.accessKey: setAttribute() to -Infinity followed by IDL get 
+PASS fieldset.accessKey: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS fieldset.accessKey: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS fieldset.accessKey: setAttribute() to null followed by getAttribute() 
+PASS fieldset.accessKey: setAttribute() to null followed by IDL get 
+PASS fieldset.accessKey: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS fieldset.accessKey: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS fieldset.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS fieldset.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS fieldset.accessKey: IDL set to &quot;&quot; should not throw 
+PASS fieldset.accessKey: IDL set to &quot;&quot; followed by getAttribute() 
+PASS fieldset.accessKey: IDL set to &quot;&quot; followed by IDL get 
+PASS fieldset.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS fieldset.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS fieldset.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS fieldset.accessKey: IDL set to undefined should not throw 
+PASS fieldset.accessKey: IDL set to undefined followed by getAttribute() 
+PASS fieldset.accessKey: IDL set to undefined followed by IDL get 
+PASS fieldset.accessKey: IDL set to 7 should not throw 
+PASS fieldset.accessKey: IDL set to 7 followed by getAttribute() 
+PASS fieldset.accessKey: IDL set to 7 followed by IDL get 
+PASS fieldset.accessKey: IDL set to 1.5 should not throw 
+PASS fieldset.accessKey: IDL set to 1.5 followed by getAttribute() 
+PASS fieldset.accessKey: IDL set to 1.5 followed by IDL get 
+PASS fieldset.accessKey: IDL set to true should not throw 
+PASS fieldset.accessKey: IDL set to true followed by getAttribute() 
+PASS fieldset.accessKey: IDL set to true followed by IDL get 
+PASS fieldset.accessKey: IDL set to false should not throw 
+PASS fieldset.accessKey: IDL set to false followed by getAttribute() 
+PASS fieldset.accessKey: IDL set to false followed by IDL get 
+PASS fieldset.accessKey: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS fieldset.accessKey: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS fieldset.accessKey: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS fieldset.accessKey: IDL set to NaN should not throw 
+PASS fieldset.accessKey: IDL set to NaN followed by getAttribute() 
+PASS fieldset.accessKey: IDL set to NaN followed by IDL get 
+PASS fieldset.accessKey: IDL set to Infinity should not throw 
+PASS fieldset.accessKey: IDL set to Infinity followed by getAttribute() 
+PASS fieldset.accessKey: IDL set to Infinity followed by IDL get 
+PASS fieldset.accessKey: IDL set to -Infinity should not throw 
+PASS fieldset.accessKey: IDL set to -Infinity followed by getAttribute() 
+PASS fieldset.accessKey: IDL set to -Infinity followed by IDL get 
+PASS fieldset.accessKey: IDL set to &quot;\0&quot; should not throw 
+PASS fieldset.accessKey: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS fieldset.accessKey: IDL set to &quot;\0&quot; followed by IDL get 
+PASS fieldset.accessKey: IDL set to null should not throw 
+PASS fieldset.accessKey: IDL set to null followed by getAttribute() 
+PASS fieldset.accessKey: IDL set to null followed by IDL get 
+PASS fieldset.accessKey: IDL set to object &quot;test-toString&quot; should not throw 
+PASS fieldset.accessKey: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS fieldset.accessKey: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS fieldset.accessKey: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS fieldset.accessKey: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS fieldset.accessKey: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS fieldset.tabIndex: typeof IDL attribute 
+PASS fieldset.tabIndex: setAttribute() to -36 followed by getAttribute() 
+PASS fieldset.tabIndex: setAttribute() to -36 followed by IDL get 
+PASS fieldset.tabIndex: setAttribute() to -1 followed by getAttribute() 
+PASS fieldset.tabIndex: setAttribute() to -1 followed by IDL get 
+PASS fieldset.tabIndex: setAttribute() to 0 followed by getAttribute() 
+PASS fieldset.tabIndex: setAttribute() to 0 followed by IDL get 
+PASS fieldset.tabIndex: setAttribute() to 1 followed by getAttribute() 
+PASS fieldset.tabIndex: setAttribute() to 1 followed by IDL get 
+PASS fieldset.tabIndex: setAttribute() to 2147483647 followed by getAttribute() 
+PASS fieldset.tabIndex: setAttribute() to 2147483647 followed by IDL get 
+PASS fieldset.tabIndex: setAttribute() to -2147483648 followed by getAttribute() 
+PASS fieldset.tabIndex: setAttribute() to -2147483648 followed by IDL get 
+PASS fieldset.tabIndex: setAttribute() to &quot;-1&quot; followed by getAttribute() 
+PASS fieldset.tabIndex: setAttribute() to &quot;-1&quot; followed by IDL get 
+PASS fieldset.tabIndex: setAttribute() to &quot;-0&quot; followed by getAttribute() 
+PASS fieldset.tabIndex: setAttribute() to &quot;-0&quot; followed by IDL get 
+PASS fieldset.tabIndex: setAttribute() to &quot;0&quot; followed by getAttribute() 
+PASS fieldset.tabIndex: setAttribute() to &quot;0&quot; followed by IDL get 
+PASS fieldset.tabIndex: setAttribute() to &quot;1&quot; followed by getAttribute() 
+PASS fieldset.tabIndex: setAttribute() to &quot;1&quot; followed by IDL get 
+PASS fieldset.tabIndex: setAttribute() to &quot;\t7&quot; followed by getAttribute() 
+PASS fieldset.tabIndex: setAttribute() to &quot;\t7&quot; followed by IDL get 
+PASS fieldset.tabIndex: setAttribute() to &quot;\f7&quot; followed by getAttribute() 
+PASS fieldset.tabIndex: setAttribute() to &quot;\f7&quot; followed by IDL get 
+PASS fieldset.tabIndex: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS fieldset.tabIndex: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS fieldset.tabIndex: setAttribute() to &quot;\n7&quot; followed by getAttribute() 
+PASS fieldset.tabIndex: setAttribute() to &quot;\n7&quot; followed by IDL get 
+PASS fieldset.tabIndex: setAttribute() to &quot;\r7&quot; followed by getAttribute() 
+PASS fieldset.tabIndex: setAttribute() to &quot;\r7&quot; followed by IDL get 
+PASS fieldset.tabIndex: setAttribute() to 1.5 followed by getAttribute() 
+PASS fieldset.tabIndex: setAttribute() to 1.5 followed by IDL get 
+PASS fieldset.tabIndex: setAttribute() to object &quot;2&quot; followed by getAttribute() 
+PASS fieldset.tabIndex: setAttribute() to object &quot;2&quot; followed by IDL get 
+PASS fieldset.tabIndex: IDL set to -36 should not throw 
+PASS fieldset.tabIndex: IDL set to -36 followed by getAttribute() 
+PASS fieldset.tabIndex: IDL set to -36 followed by IDL get 
+PASS fieldset.tabIndex: IDL set to -1 should not throw 
+PASS fieldset.tabIndex: IDL set to -1 followed by getAttribute() 
+PASS fieldset.tabIndex: IDL set to -1 followed by IDL get 
+PASS fieldset.tabIndex: IDL set to 0 should not throw 
+PASS fieldset.tabIndex: IDL set to 0 followed by getAttribute() 
+PASS fieldset.tabIndex: IDL set to 0 followed by IDL get 
+PASS fieldset.tabIndex: IDL set to 1 should not throw 
+PASS fieldset.tabIndex: IDL set to 1 followed by getAttribute() 
+PASS fieldset.tabIndex: IDL set to 1 followed by IDL get 
+PASS fieldset.tabIndex: IDL set to 2147483647 should not throw 
+PASS fieldset.tabIndex: IDL set to 2147483647 followed by getAttribute() 
+PASS fieldset.tabIndex: IDL set to 2147483647 followed by IDL get 
+PASS fieldset.tabIndex: IDL set to -2147483648 should not throw 
+PASS fieldset.tabIndex: IDL set to -2147483648 followed by getAttribute() 
+PASS fieldset.tabIndex: IDL set to -2147483648 followed by IDL get 
+PASS fieldset.disabled: typeof IDL attribute 
+PASS fieldset.disabled: IDL get with DOM attribute unset 
+PASS fieldset.disabled: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS fieldset.disabled: setAttribute() to &quot;&quot; followed by IDL get 
+PASS fieldset.disabled: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS fieldset.disabled: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS fieldset.disabled: setAttribute() to undefined followed by getAttribute() 
+PASS fieldset.disabled: setAttribute() to undefined followed by IDL get 
+PASS fieldset.disabled: setAttribute() to null followed by getAttribute() 
+PASS fieldset.disabled: setAttribute() to null followed by IDL get 
+PASS fieldset.disabled: setAttribute() to 7 followed by getAttribute() 
+PASS fieldset.disabled: setAttribute() to 7 followed by IDL get 
+PASS fieldset.disabled: setAttribute() to 1.5 followed by getAttribute() 
+PASS fieldset.disabled: setAttribute() to 1.5 followed by IDL get 
+PASS fieldset.disabled: setAttribute() to true followed by getAttribute() 
+PASS fieldset.disabled: setAttribute() to true followed by IDL get 
+PASS fieldset.disabled: setAttribute() to false followed by getAttribute() 
+PASS fieldset.disabled: setAttribute() to false followed by IDL get 
+PASS fieldset.disabled: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS fieldset.disabled: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS fieldset.disabled: setAttribute() to NaN followed by getAttribute() 
+PASS fieldset.disabled: setAttribute() to NaN followed by IDL get 
+PASS fieldset.disabled: setAttribute() to Infinity followed by getAttribute() 
+PASS fieldset.disabled: setAttribute() to Infinity followed by IDL get 
+PASS fieldset.disabled: setAttribute() to -Infinity followed by getAttribute() 
+PASS fieldset.disabled: setAttribute() to -Infinity followed by IDL get 
+PASS fieldset.disabled: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS fieldset.disabled: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS fieldset.disabled: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS fieldset.disabled: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS fieldset.disabled: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS fieldset.disabled: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS fieldset.disabled: setAttribute() to &quot;disabled&quot; followed by getAttribute() 
+PASS fieldset.disabled: setAttribute() to &quot;disabled&quot; followed by IDL get 
+PASS fieldset.disabled: IDL set to &quot;&quot; should not throw 
+PASS fieldset.disabled: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS fieldset.disabled: IDL set to &quot;&quot; followed by IDL get 
+PASS fieldset.disabled: IDL set to &quot; foo &quot; should not throw 
+PASS fieldset.disabled: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS fieldset.disabled: IDL set to &quot; foo &quot; followed by IDL get 
+PASS fieldset.disabled: IDL set to undefined should not throw 
+PASS fieldset.disabled: IDL set to undefined followed by hasAttribute() 
+PASS fieldset.disabled: IDL set to undefined followed by IDL get 
+PASS fieldset.disabled: IDL set to null should not throw 
+PASS fieldset.disabled: IDL set to null followed by hasAttribute() 
+PASS fieldset.disabled: IDL set to null followed by IDL get 
+PASS fieldset.disabled: IDL set to 7 should not throw 
+PASS fieldset.disabled: IDL set to 7 followed by hasAttribute() 
+PASS fieldset.disabled: IDL set to 7 followed by IDL get 
+PASS fieldset.disabled: IDL set to 1.5 should not throw 
+PASS fieldset.disabled: IDL set to 1.5 followed by hasAttribute() 
+PASS fieldset.disabled: IDL set to 1.5 followed by IDL get 
+PASS fieldset.disabled: IDL set to true should not throw 
+PASS fieldset.disabled: IDL set to true followed by hasAttribute() 
+PASS fieldset.disabled: IDL set to true followed by IDL get 
+PASS fieldset.disabled: IDL set to false should not throw 
+PASS fieldset.disabled: IDL set to false followed by hasAttribute() 
+PASS fieldset.disabled: IDL set to false followed by IDL get 
+PASS fieldset.disabled: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS fieldset.disabled: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS fieldset.disabled: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS fieldset.disabled: IDL set to NaN should not throw 
+PASS fieldset.disabled: IDL set to NaN followed by hasAttribute() 
+PASS fieldset.disabled: IDL set to NaN followed by IDL get 
+PASS fieldset.disabled: IDL set to Infinity should not throw 
+PASS fieldset.disabled: IDL set to Infinity followed by hasAttribute() 
+PASS fieldset.disabled: IDL set to Infinity followed by IDL get 
+PASS fieldset.disabled: IDL set to -Infinity should not throw 
+PASS fieldset.disabled: IDL set to -Infinity followed by hasAttribute() 
+PASS fieldset.disabled: IDL set to -Infinity followed by IDL get 
+PASS fieldset.disabled: IDL set to &quot;\0&quot; should not throw 
+PASS fieldset.disabled: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS fieldset.disabled: IDL set to &quot;\0&quot; followed by IDL get 
+PASS fieldset.disabled: IDL set to object &quot;test-toString&quot; should not throw 
+PASS fieldset.disabled: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS fieldset.disabled: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS fieldset.disabled: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS fieldset.disabled: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS fieldset.disabled: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS fieldset.name: typeof IDL attribute 
+PASS fieldset.name: IDL get with DOM attribute unset 
+PASS fieldset.name: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS fieldset.name: setAttribute() to &quot;&quot; followed by IDL get 
+PASS fieldset.name: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS fieldset.name: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS fieldset.name: setAttribute() to undefined followed by getAttribute() 
+PASS fieldset.name: setAttribute() to undefined followed by IDL get 
+PASS fieldset.name: setAttribute() to 7 followed by getAttribute() 
+PASS fieldset.name: setAttribute() to 7 followed by IDL get 
+PASS fieldset.name: setAttribute() to 1.5 followed by getAttribute() 
+PASS fieldset.name: setAttribute() to 1.5 followed by IDL get 
+PASS fieldset.name: setAttribute() to true followed by getAttribute() 
+PASS fieldset.name: setAttribute() to true followed by IDL get 
+PASS fieldset.name: setAttribute() to false followed by getAttribute() 
+PASS fieldset.name: setAttribute() to false followed by IDL get 
+PASS fieldset.name: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS fieldset.name: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS fieldset.name: setAttribute() to NaN followed by getAttribute() 
+PASS fieldset.name: setAttribute() to NaN followed by IDL get 
+PASS fieldset.name: setAttribute() to Infinity followed by getAttribute() 
+PASS fieldset.name: setAttribute() to Infinity followed by IDL get 
+PASS fieldset.name: setAttribute() to -Infinity followed by getAttribute() 
+PASS fieldset.name: setAttribute() to -Infinity followed by IDL get 
+PASS fieldset.name: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS fieldset.name: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS fieldset.name: setAttribute() to null followed by getAttribute() 
+PASS fieldset.name: setAttribute() to null followed by IDL get 
+PASS fieldset.name: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS fieldset.name: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS fieldset.name: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS fieldset.name: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS fieldset.name: IDL set to &quot;&quot; should not throw 
+PASS fieldset.name: IDL set to &quot;&quot; followed by getAttribute() 
+PASS fieldset.name: IDL set to &quot;&quot; followed by IDL get 
+PASS fieldset.name: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS fieldset.name: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS fieldset.name: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS fieldset.name: IDL set to undefined should not throw 
+PASS fieldset.name: IDL set to undefined followed by getAttribute() 
+PASS fieldset.name: IDL set to undefined followed by IDL get 
+PASS fieldset.name: IDL set to 7 should not throw 
+PASS fieldset.name: IDL set to 7 followed by getAttribute() 
+PASS fieldset.name: IDL set to 7 followed by IDL get 
+PASS fieldset.name: IDL set to 1.5 should not throw 
+PASS fieldset.name: IDL set to 1.5 followed by getAttribute() 
+PASS fieldset.name: IDL set to 1.5 followed by IDL get 
+PASS fieldset.name: IDL set to true should not throw 
+PASS fieldset.name: IDL set to true followed by getAttribute() 
+PASS fieldset.name: IDL set to true followed by IDL get 
+PASS fieldset.name: IDL set to false should not throw 
+PASS fieldset.name: IDL set to false followed by getAttribute() 
+PASS fieldset.name: IDL set to false followed by IDL get 
+PASS fieldset.name: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS fieldset.name: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS fieldset.name: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS fieldset.name: IDL set to NaN should not throw 
+PASS fieldset.name: IDL set to NaN followed by getAttribute() 
+PASS fieldset.name: IDL set to NaN followed by IDL get 
+PASS fieldset.name: IDL set to Infinity should not throw 
+PASS fieldset.name: IDL set to Infinity followed by getAttribute() 
+PASS fieldset.name: IDL set to Infinity followed by IDL get 
+PASS fieldset.name: IDL set to -Infinity should not throw 
+PASS fieldset.name: IDL set to -Infinity followed by getAttribute() 
+PASS fieldset.name: IDL set to -Infinity followed by IDL get 
+PASS fieldset.name: IDL set to &quot;\0&quot; should not throw 
+PASS fieldset.name: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS fieldset.name: IDL set to &quot;\0&quot; followed by IDL get 
+PASS fieldset.name: IDL set to null should not throw 
+PASS fieldset.name: IDL set to null followed by getAttribute() 
+PASS fieldset.name: IDL set to null followed by IDL get 
+PASS fieldset.name: IDL set to object &quot;test-toString&quot; should not throw 
+PASS fieldset.name: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS fieldset.name: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS fieldset.name: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS fieldset.name: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS fieldset.name: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS legend.title: typeof IDL attribute 
+PASS legend.title: IDL get with DOM attribute unset 
+PASS legend.title: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS legend.title: setAttribute() to &quot;&quot; followed by IDL get 
+PASS legend.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS legend.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS legend.title: setAttribute() to undefined followed by getAttribute() 
+PASS legend.title: setAttribute() to undefined followed by IDL get 
+PASS legend.title: setAttribute() to 7 followed by getAttribute() 
+PASS legend.title: setAttribute() to 7 followed by IDL get 
+PASS legend.title: setAttribute() to 1.5 followed by getAttribute() 
+PASS legend.title: setAttribute() to 1.5 followed by IDL get 
+PASS legend.title: setAttribute() to true followed by getAttribute() 
+PASS legend.title: setAttribute() to true followed by IDL get 
+PASS legend.title: setAttribute() to false followed by getAttribute() 
+PASS legend.title: setAttribute() to false followed by IDL get 
+PASS legend.title: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS legend.title: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS legend.title: setAttribute() to NaN followed by getAttribute() 
+PASS legend.title: setAttribute() to NaN followed by IDL get 
+PASS legend.title: setAttribute() to Infinity followed by getAttribute() 
+PASS legend.title: setAttribute() to Infinity followed by IDL get 
+PASS legend.title: setAttribute() to -Infinity followed by getAttribute() 
+PASS legend.title: setAttribute() to -Infinity followed by IDL get 
+PASS legend.title: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS legend.title: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS legend.title: setAttribute() to null followed by getAttribute() 
+PASS legend.title: setAttribute() to null followed by IDL get 
+PASS legend.title: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS legend.title: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS legend.title: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS legend.title: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS legend.title: IDL set to &quot;&quot; should not throw 
+PASS legend.title: IDL set to &quot;&quot; followed by getAttribute() 
+PASS legend.title: IDL set to &quot;&quot; followed by IDL get 
+PASS legend.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS legend.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS legend.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS legend.title: IDL set to undefined should not throw 
+PASS legend.title: IDL set to undefined followed by getAttribute() 
+PASS legend.title: IDL set to undefined followed by IDL get 
+PASS legend.title: IDL set to 7 should not throw 
+PASS legend.title: IDL set to 7 followed by getAttribute() 
+PASS legend.title: IDL set to 7 followed by IDL get 
+PASS legend.title: IDL set to 1.5 should not throw 
+PASS legend.title: IDL set to 1.5 followed by getAttribute() 
+PASS legend.title: IDL set to 1.5 followed by IDL get 
+PASS legend.title: IDL set to true should not throw 
+PASS legend.title: IDL set to true followed by getAttribute() 
+PASS legend.title: IDL set to true followed by IDL get 
+PASS legend.title: IDL set to false should not throw 
+PASS legend.title: IDL set to false followed by getAttribute() 
+PASS legend.title: IDL set to false followed by IDL get 
+PASS legend.title: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS legend.title: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS legend.title: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS legend.title: IDL set to NaN should not throw 
+PASS legend.title: IDL set to NaN followed by getAttribute() 
+PASS legend.title: IDL set to NaN followed by IDL get 
+PASS legend.title: IDL set to Infinity should not throw 
+PASS legend.title: IDL set to Infinity followed by getAttribute() 
+PASS legend.title: IDL set to Infinity followed by IDL get 
+PASS legend.title: IDL set to -Infinity should not throw 
+PASS legend.title: IDL set to -Infinity followed by getAttribute() 
+PASS legend.title: IDL set to -Infinity followed by IDL get 
+PASS legend.title: IDL set to &quot;\0&quot; should not throw 
+PASS legend.title: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS legend.title: IDL set to &quot;\0&quot; followed by IDL get 
+PASS legend.title: IDL set to null should not throw 
+PASS legend.title: IDL set to null followed by getAttribute() 
+PASS legend.title: IDL set to null followed by IDL get 
+PASS legend.title: IDL set to object &quot;test-toString&quot; should not throw 
+PASS legend.title: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS legend.title: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS legend.title: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS legend.title: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS legend.title: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS legend.lang: typeof IDL attribute 
+PASS legend.lang: IDL get with DOM attribute unset 
+PASS legend.lang: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS legend.lang: setAttribute() to &quot;&quot; followed by IDL get 
+PASS legend.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS legend.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS legend.lang: setAttribute() to undefined followed by getAttribute() 
+PASS legend.lang: setAttribute() to undefined followed by IDL get 
+PASS legend.lang: setAttribute() to 7 followed by getAttribute() 
+PASS legend.lang: setAttribute() to 7 followed by IDL get 
+PASS legend.lang: setAttribute() to 1.5 followed by getAttribute() 
+PASS legend.lang: setAttribute() to 1.5 followed by IDL get 
+PASS legend.lang: setAttribute() to true followed by getAttribute() 
+PASS legend.lang: setAttribute() to true followed by IDL get 
+PASS legend.lang: setAttribute() to false followed by getAttribute() 
+PASS legend.lang: setAttribute() to false followed by IDL get 
+PASS legend.lang: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS legend.lang: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS legend.lang: setAttribute() to NaN followed by getAttribute() 
+PASS legend.lang: setAttribute() to NaN followed by IDL get 
+PASS legend.lang: setAttribute() to Infinity followed by getAttribute() 
+PASS legend.lang: setAttribute() to Infinity followed by IDL get 
+PASS legend.lang: setAttribute() to -Infinity followed by getAttribute() 
+PASS legend.lang: setAttribute() to -Infinity followed by IDL get 
+PASS legend.lang: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS legend.lang: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS legend.lang: setAttribute() to null followed by getAttribute() 
+PASS legend.lang: setAttribute() to null followed by IDL get 
+PASS legend.lang: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS legend.lang: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS legend.lang: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS legend.lang: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS legend.lang: IDL set to &quot;&quot; should not throw 
+PASS legend.lang: IDL set to &quot;&quot; followed by getAttribute() 
+PASS legend.lang: IDL set to &quot;&quot; followed by IDL get 
+PASS legend.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS legend.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS legend.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS legend.lang: IDL set to undefined should not throw 
+PASS legend.lang: IDL set to undefined followed by getAttribute() 
+PASS legend.lang: IDL set to undefined followed by IDL get 
+PASS legend.lang: IDL set to 7 should not throw 
+PASS legend.lang: IDL set to 7 followed by getAttribute() 
+PASS legend.lang: IDL set to 7 followed by IDL get 
+PASS legend.lang: IDL set to 1.5 should not throw 
+PASS legend.lang: IDL set to 1.5 followed by getAttribute() 
+PASS legend.lang: IDL set to 1.5 followed by IDL get 
+PASS legend.lang: IDL set to true should not throw 
+PASS legend.lang: IDL set to true followed by getAttribute() 
+PASS legend.lang: IDL set to true followed by IDL get 
+PASS legend.lang: IDL set to false should not throw 
+PASS legend.lang: IDL set to false followed by getAttribute() 
+PASS legend.lang: IDL set to false followed by IDL get 
+PASS legend.lang: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS legend.lang: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS legend.lang: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS legend.lang: IDL set to NaN should not throw 
+PASS legend.lang: IDL set to NaN followed by getAttribute() 
+PASS legend.lang: IDL set to NaN followed by IDL get 
+PASS legend.lang: IDL set to Infinity should not throw 
+PASS legend.lang: IDL set to Infinity followed by getAttribute() 
+PASS legend.lang: IDL set to Infinity followed by IDL get 
+PASS legend.lang: IDL set to -Infinity should not throw 
+PASS legend.lang: IDL set to -Infinity followed by getAttribute() 
+PASS legend.lang: IDL set to -Infinity followed by IDL get 
+PASS legend.lang: IDL set to &quot;\0&quot; should not throw 
+PASS legend.lang: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS legend.lang: IDL set to &quot;\0&quot; followed by IDL get 
+PASS legend.lang: IDL set to null should not throw 
+PASS legend.lang: IDL set to null followed by getAttribute() 
+PASS legend.lang: IDL set to null followed by IDL get 
+PASS legend.lang: IDL set to object &quot;test-toString&quot; should not throw 
+PASS legend.lang: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS legend.lang: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS legend.lang: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS legend.lang: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS legend.lang: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS legend.dir: typeof IDL attribute 
+PASS legend.dir: IDL get with DOM attribute unset 
+PASS legend.dir: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS legend.dir: setAttribute() to &quot;&quot; followed by IDL get 
+PASS legend.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS legend.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS legend.dir: setAttribute() to undefined followed by getAttribute() 
+PASS legend.dir: setAttribute() to undefined followed by IDL get 
+PASS legend.dir: setAttribute() to 7 followed by getAttribute() 
+PASS legend.dir: setAttribute() to 7 followed by IDL get 
+PASS legend.dir: setAttribute() to 1.5 followed by getAttribute() 
+PASS legend.dir: setAttribute() to 1.5 followed by IDL get 
+PASS legend.dir: setAttribute() to true followed by getAttribute() 
+PASS legend.dir: setAttribute() to true followed by IDL get 
+PASS legend.dir: setAttribute() to false followed by getAttribute() 
+PASS legend.dir: setAttribute() to false followed by IDL get 
+PASS legend.dir: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS legend.dir: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS legend.dir: setAttribute() to NaN followed by getAttribute() 
+PASS legend.dir: setAttribute() to NaN followed by IDL get 
+PASS legend.dir: setAttribute() to Infinity followed by getAttribute() 
+PASS legend.dir: setAttribute() to Infinity followed by IDL get 
+PASS legend.dir: setAttribute() to -Infinity followed by getAttribute() 
+PASS legend.dir: setAttribute() to -Infinity followed by IDL get 
+PASS legend.dir: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS legend.dir: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS legend.dir: setAttribute() to null followed by getAttribute() 
+PASS legend.dir: setAttribute() to null followed by IDL get 
+PASS legend.dir: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS legend.dir: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS legend.dir: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS legend.dir: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS legend.dir: setAttribute() to &quot;ltr&quot; followed by getAttribute() 
+PASS legend.dir: setAttribute() to &quot;ltr&quot; followed by IDL get 
+PASS legend.dir: setAttribute() to &quot;xltr&quot; followed by getAttribute() 
+PASS legend.dir: setAttribute() to &quot;xltr&quot; followed by IDL get 
+PASS legend.dir: setAttribute() to &quot;ltr\0&quot; followed by getAttribute() 
+PASS legend.dir: setAttribute() to &quot;ltr\0&quot; followed by IDL get 
+PASS legend.dir: setAttribute() to &quot;tr&quot; followed by getAttribute() 
+PASS legend.dir: setAttribute() to &quot;tr&quot; followed by IDL get 
+PASS legend.dir: setAttribute() to &quot;LTR&quot; followed by getAttribute() 
+PASS legend.dir: setAttribute() to &quot;LTR&quot; followed by IDL get 
+PASS legend.dir: setAttribute() to &quot;rtl&quot; followed by getAttribute() 
+PASS legend.dir: setAttribute() to &quot;rtl&quot; followed by IDL get 
+PASS legend.dir: setAttribute() to &quot;xrtl&quot; followed by getAttribute() 
+PASS legend.dir: setAttribute() to &quot;xrtl&quot; followed by IDL get 
+PASS legend.dir: setAttribute() to &quot;rtl\0&quot; followed by getAttribute() 
+PASS legend.dir: setAttribute() to &quot;rtl\0&quot; followed by IDL get 
+PASS legend.dir: setAttribute() to &quot;tl&quot; followed by getAttribute() 
+PASS legend.dir: setAttribute() to &quot;tl&quot; followed by IDL get 
+PASS legend.dir: setAttribute() to &quot;RTL&quot; followed by getAttribute() 
+PASS legend.dir: setAttribute() to &quot;RTL&quot; followed by IDL get 
+PASS legend.dir: setAttribute() to &quot;auto&quot; followed by getAttribute() 
+PASS legend.dir: setAttribute() to &quot;auto&quot; followed by IDL get 
+PASS legend.dir: setAttribute() to &quot;xauto&quot; followed by getAttribute() 
+PASS legend.dir: setAttribute() to &quot;xauto&quot; followed by IDL get 
+PASS legend.dir: setAttribute() to &quot;auto\0&quot; followed by getAttribute() 
+PASS legend.dir: setAttribute() to &quot;auto\0&quot; followed by IDL get 
+PASS legend.dir: setAttribute() to &quot;uto&quot; followed by getAttribute() 
+PASS legend.dir: setAttribute() to &quot;uto&quot; followed by IDL get 
+PASS legend.dir: setAttribute() to &quot;AUTO&quot; followed by getAttribute() 
+PASS legend.dir: setAttribute() to &quot;AUTO&quot; followed by IDL get 
+PASS legend.dir: IDL set to &quot;&quot; should not throw 
+PASS legend.dir: IDL set to &quot;&quot; followed by getAttribute() 
+PASS legend.dir: IDL set to &quot;&quot; followed by IDL get 
+PASS legend.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS legend.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS legend.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS legend.dir: IDL set to undefined should not throw 
+PASS legend.dir: IDL set to undefined followed by getAttribute() 
+PASS legend.dir: IDL set to undefined followed by IDL get 
+PASS legend.dir: IDL set to 7 should not throw 
+PASS legend.dir: IDL set to 7 followed by getAttribute() 
+PASS legend.dir: IDL set to 7 followed by IDL get 
+PASS legend.dir: IDL set to 1.5 should not throw 
+PASS legend.dir: IDL set to 1.5 followed by getAttribute() 
+PASS legend.dir: IDL set to 1.5 followed by IDL get 
+PASS legend.dir: IDL set to true should not throw 
+PASS legend.dir: IDL set to true followed by getAttribute() 
+PASS legend.dir: IDL set to true followed by IDL get 
+PASS legend.dir: IDL set to false should not throw 
+PASS legend.dir: IDL set to false followed by getAttribute() 
+PASS legend.dir: IDL set to false followed by IDL get 
+PASS legend.dir: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS legend.dir: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS legend.dir: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS legend.dir: IDL set to NaN should not throw 
+PASS legend.dir: IDL set to NaN followed by getAttribute() 
+PASS legend.dir: IDL set to NaN followed by IDL get 
+PASS legend.dir: IDL set to Infinity should not throw 
+PASS legend.dir: IDL set to Infinity followed by getAttribute() 
+PASS legend.dir: IDL set to Infinity followed by IDL get 
+PASS legend.dir: IDL set to -Infinity should not throw 
+PASS legend.dir: IDL set to -Infinity followed by getAttribute() 
+PASS legend.dir: IDL set to -Infinity followed by IDL get 
+PASS legend.dir: IDL set to &quot;\0&quot; should not throw 
+PASS legend.dir: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS legend.dir: IDL set to &quot;\0&quot; followed by IDL get 
+PASS legend.dir: IDL set to null should not throw 
+PASS legend.dir: IDL set to null followed by IDL get 
+PASS legend.dir: IDL set to object &quot;test-toString&quot; should not throw 
+PASS legend.dir: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS legend.dir: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS legend.dir: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS legend.dir: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS legend.dir: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS legend.dir: IDL set to &quot;ltr&quot; should not throw 
+PASS legend.dir: IDL set to &quot;ltr&quot; followed by getAttribute() 
+PASS legend.dir: IDL set to &quot;ltr&quot; followed by IDL get 
+PASS legend.dir: IDL set to &quot;xltr&quot; should not throw 
+PASS legend.dir: IDL set to &quot;xltr&quot; followed by getAttribute() 
+PASS legend.dir: IDL set to &quot;xltr&quot; followed by IDL get 
+PASS legend.dir: IDL set to &quot;ltr\0&quot; should not throw 
+PASS legend.dir: IDL set to &quot;ltr\0&quot; followed by getAttribute() 
+PASS legend.dir: IDL set to &quot;ltr\0&quot; followed by IDL get 
+PASS legend.dir: IDL set to &quot;tr&quot; should not throw 
+PASS legend.dir: IDL set to &quot;tr&quot; followed by getAttribute() 
+PASS legend.dir: IDL set to &quot;tr&quot; followed by IDL get 
+PASS legend.dir: IDL set to &quot;LTR&quot; should not throw 
+PASS legend.dir: IDL set to &quot;LTR&quot; followed by getAttribute() 
+PASS legend.dir: IDL set to &quot;LTR&quot; followed by IDL get 
+PASS legend.dir: IDL set to &quot;rtl&quot; should not throw 
+PASS legend.dir: IDL set to &quot;rtl&quot; followed by getAttribute() 
+PASS legend.dir: IDL set to &quot;rtl&quot; followed by IDL get 
+PASS legend.dir: IDL set to &quot;xrtl&quot; should not throw 
+PASS legend.dir: IDL set to &quot;xrtl&quot; followed by getAttribute() 
+PASS legend.dir: IDL set to &quot;xrtl&quot; followed by IDL get 
+PASS legend.dir: IDL set to &quot;rtl\0&quot; should not throw 
+PASS legend.dir: IDL set to &quot;rtl\0&quot; followed by getAttribute() 
+PASS legend.dir: IDL set to &quot;rtl\0&quot; followed by IDL get 
+PASS legend.dir: IDL set to &quot;tl&quot; should not throw 
+PASS legend.dir: IDL set to &quot;tl&quot; followed by getAttribute() 
+PASS legend.dir: IDL set to &quot;tl&quot; followed by IDL get 
+PASS legend.dir: IDL set to &quot;RTL&quot; should not throw 
+PASS legend.dir: IDL set to &quot;RTL&quot; followed by getAttribute() 
+PASS legend.dir: IDL set to &quot;RTL&quot; followed by IDL get 
+PASS legend.dir: IDL set to &quot;auto&quot; should not throw 
+PASS legend.dir: IDL set to &quot;auto&quot; followed by getAttribute() 
+PASS legend.dir: IDL set to &quot;auto&quot; followed by IDL get 
+PASS legend.dir: IDL set to &quot;xauto&quot; should not throw 
+PASS legend.dir: IDL set to &quot;xauto&quot; followed by getAttribute() 
+PASS legend.dir: IDL set to &quot;xauto&quot; followed by IDL get 
+PASS legend.dir: IDL set to &quot;auto\0&quot; should not throw 
+PASS legend.dir: IDL set to &quot;auto\0&quot; followed by getAttribute() 
+PASS legend.dir: IDL set to &quot;auto\0&quot; followed by IDL get 
+PASS legend.dir: IDL set to &quot;uto&quot; should not throw 
+PASS legend.dir: IDL set to &quot;uto&quot; followed by getAttribute() 
+PASS legend.dir: IDL set to &quot;uto&quot; followed by IDL get 
+PASS legend.dir: IDL set to &quot;AUTO&quot; should not throw 
+PASS legend.dir: IDL set to &quot;AUTO&quot; followed by getAttribute() 
+PASS legend.dir: IDL set to &quot;AUTO&quot; followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): typeof IDL attribute 
+PASS legend.className (&lt;legend class&gt;): IDL get with DOM attribute unset 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to &quot;&quot; followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to undefined followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to undefined followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to 7 followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to 7 followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to 1.5 followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to 1.5 followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to true followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to true followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to false followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to false followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to NaN followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to NaN followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to Infinity followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to Infinity followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to -Infinity followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to -Infinity followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to null followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to null followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): IDL set to &quot;&quot; should not throw 
+PASS legend.className (&lt;legend class&gt;): IDL set to &quot;&quot; followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): IDL set to &quot;&quot; followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS legend.className (&lt;legend class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): IDL set to undefined should not throw 
+PASS legend.className (&lt;legend class&gt;): IDL set to undefined followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): IDL set to undefined followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): IDL set to 7 should not throw 
+PASS legend.className (&lt;legend class&gt;): IDL set to 7 followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): IDL set to 7 followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): IDL set to 1.5 should not throw 
+PASS legend.className (&lt;legend class&gt;): IDL set to 1.5 followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): IDL set to 1.5 followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): IDL set to true should not throw 
+PASS legend.className (&lt;legend class&gt;): IDL set to true followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): IDL set to true followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): IDL set to false should not throw 
+PASS legend.className (&lt;legend class&gt;): IDL set to false followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): IDL set to false followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): IDL set to object &quot;[object Object]&quot; should not throw 
+PASS legend.className (&lt;legend class&gt;): IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): IDL set to NaN should not throw 
+PASS legend.className (&lt;legend class&gt;): IDL set to NaN followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): IDL set to NaN followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): IDL set to Infinity should not throw 
+PASS legend.className (&lt;legend class&gt;): IDL set to Infinity followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): IDL set to Infinity followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): IDL set to -Infinity should not throw 
+PASS legend.className (&lt;legend class&gt;): IDL set to -Infinity followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): IDL set to -Infinity followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): IDL set to &quot;\0&quot; should not throw 
+PASS legend.className (&lt;legend class&gt;): IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): IDL set to &quot;\0&quot; followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): IDL set to null should not throw 
+PASS legend.className (&lt;legend class&gt;): IDL set to null followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): IDL set to null followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): IDL set to object &quot;test-toString&quot; should not throw 
+PASS legend.className (&lt;legend class&gt;): IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS legend.className (&lt;legend class&gt;): IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS legend.className (&lt;legend class&gt;): IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS legend.className (&lt;legend class&gt;): IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS legend.hidden: typeof IDL attribute 
+PASS legend.hidden: IDL get with DOM attribute unset 
+PASS legend.hidden: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS legend.hidden: setAttribute() to &quot;&quot; followed by IDL get 
+PASS legend.hidden: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS legend.hidden: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS legend.hidden: setAttribute() to undefined followed by getAttribute() 
+PASS legend.hidden: setAttribute() to undefined followed by IDL get 
+PASS legend.hidden: setAttribute() to null followed by getAttribute() 
+PASS legend.hidden: setAttribute() to null followed by IDL get 
+PASS legend.hidden: setAttribute() to 7 followed by getAttribute() 
+PASS legend.hidden: setAttribute() to 7 followed by IDL get 
+PASS legend.hidden: setAttribute() to 1.5 followed by getAttribute() 
+PASS legend.hidden: setAttribute() to 1.5 followed by IDL get 
+PASS legend.hidden: setAttribute() to true followed by getAttribute() 
+PASS legend.hidden: setAttribute() to true followed by IDL get 
+PASS legend.hidden: setAttribute() to false followed by getAttribute() 
+PASS legend.hidden: setAttribute() to false followed by IDL get 
+PASS legend.hidden: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS legend.hidden: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS legend.hidden: setAttribute() to NaN followed by getAttribute() 
+PASS legend.hidden: setAttribute() to NaN followed by IDL get 
+PASS legend.hidden: setAttribute() to Infinity followed by getAttribute() 
+PASS legend.hidden: setAttribute() to Infinity followed by IDL get 
+PASS legend.hidden: setAttribute() to -Infinity followed by getAttribute() 
+PASS legend.hidden: setAttribute() to -Infinity followed by IDL get 
+PASS legend.hidden: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS legend.hidden: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS legend.hidden: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS legend.hidden: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS legend.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS legend.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS legend.hidden: setAttribute() to &quot;hidden&quot; followed by getAttribute() 
+PASS legend.hidden: setAttribute() to &quot;hidden&quot; followed by IDL get 
+PASS legend.hidden: IDL set to &quot;&quot; should not throw 
+PASS legend.hidden: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS legend.hidden: IDL set to &quot;&quot; followed by IDL get 
+PASS legend.hidden: IDL set to &quot; foo &quot; should not throw 
+PASS legend.hidden: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS legend.hidden: IDL set to &quot; foo &quot; followed by IDL get 
+PASS legend.hidden: IDL set to undefined should not throw 
+PASS legend.hidden: IDL set to undefined followed by hasAttribute() 
+PASS legend.hidden: IDL set to undefined followed by IDL get 
+PASS legend.hidden: IDL set to null should not throw 
+PASS legend.hidden: IDL set to null followed by hasAttribute() 
+PASS legend.hidden: IDL set to null followed by IDL get 
+PASS legend.hidden: IDL set to 7 should not throw 
+PASS legend.hidden: IDL set to 7 followed by hasAttribute() 
+PASS legend.hidden: IDL set to 7 followed by IDL get 
+PASS legend.hidden: IDL set to 1.5 should not throw 
+PASS legend.hidden: IDL set to 1.5 followed by hasAttribute() 
+PASS legend.hidden: IDL set to 1.5 followed by IDL get 
+PASS legend.hidden: IDL set to true should not throw 
+PASS legend.hidden: IDL set to true followed by hasAttribute() 
+PASS legend.hidden: IDL set to true followed by IDL get 
+PASS legend.hidden: IDL set to false should not throw 
+PASS legend.hidden: IDL set to false followed by hasAttribute() 
+PASS legend.hidden: IDL set to false followed by IDL get 
+PASS legend.hidden: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS legend.hidden: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS legend.hidden: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS legend.hidden: IDL set to NaN should not throw 
+PASS legend.hidden: IDL set to NaN followed by hasAttribute() 
+PASS legend.hidden: IDL set to NaN followed by IDL get 
+PASS legend.hidden: IDL set to Infinity should not throw 
+PASS legend.hidden: IDL set to Infinity followed by hasAttribute() 
+PASS legend.hidden: IDL set to Infinity followed by IDL get 
+PASS legend.hidden: IDL set to -Infinity should not throw 
+PASS legend.hidden: IDL set to -Infinity followed by hasAttribute() 
+PASS legend.hidden: IDL set to -Infinity followed by IDL get 
+PASS legend.hidden: IDL set to &quot;\0&quot; should not throw 
+PASS legend.hidden: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS legend.hidden: IDL set to &quot;\0&quot; followed by IDL get 
+PASS legend.hidden: IDL set to object &quot;test-toString&quot; should not throw 
+PASS legend.hidden: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS legend.hidden: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS legend.hidden: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS legend.hidden: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS legend.hidden: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS legend.accessKey: typeof IDL attribute 
+PASS legend.accessKey: IDL get with DOM attribute unset 
+PASS legend.accessKey: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS legend.accessKey: setAttribute() to &quot;&quot; followed by IDL get 
+PASS legend.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS legend.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS legend.accessKey: setAttribute() to undefined followed by getAttribute() 
+PASS legend.accessKey: setAttribute() to undefined followed by IDL get 
+PASS legend.accessKey: setAttribute() to 7 followed by getAttribute() 
+PASS legend.accessKey: setAttribute() to 7 followed by IDL get 
+PASS legend.accessKey: setAttribute() to 1.5 followed by getAttribute() 
+PASS legend.accessKey: setAttribute() to 1.5 followed by IDL get 
+PASS legend.accessKey: setAttribute() to true followed by getAttribute() 
+PASS legend.accessKey: setAttribute() to true followed by IDL get 
+PASS legend.accessKey: setAttribute() to false followed by getAttribute() 
+PASS legend.accessKey: setAttribute() to false followed by IDL get 
+PASS legend.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS legend.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS legend.accessKey: setAttribute() to NaN followed by getAttribute() 
+PASS legend.accessKey: setAttribute() to NaN followed by IDL get 
+PASS legend.accessKey: setAttribute() to Infinity followed by getAttribute() 
+PASS legend.accessKey: setAttribute() to Infinity followed by IDL get 
+PASS legend.accessKey: setAttribute() to -Infinity followed by getAttribute() 
+PASS legend.accessKey: setAttribute() to -Infinity followed by IDL get 
+PASS legend.accessKey: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS legend.accessKey: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS legend.accessKey: setAttribute() to null followed by getAttribute() 
+PASS legend.accessKey: setAttribute() to null followed by IDL get 
+PASS legend.accessKey: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS legend.accessKey: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS legend.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS legend.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS legend.accessKey: IDL set to &quot;&quot; should not throw 
+PASS legend.accessKey: IDL set to &quot;&quot; followed by getAttribute() 
+PASS legend.accessKey: IDL set to &quot;&quot; followed by IDL get 
+PASS legend.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS legend.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS legend.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS legend.accessKey: IDL set to undefined should not throw 
+PASS legend.accessKey: IDL set to undefined followed by getAttribute() 
+PASS legend.accessKey: IDL set to undefined followed by IDL get 
+PASS legend.accessKey: IDL set to 7 should not throw 
+PASS legend.accessKey: IDL set to 7 followed by getAttribute() 
+PASS legend.accessKey: IDL set to 7 followed by IDL get 
+PASS legend.accessKey: IDL set to 1.5 should not throw 
+PASS legend.accessKey: IDL set to 1.5 followed by getAttribute() 
+PASS legend.accessKey: IDL set to 1.5 followed by IDL get 
+PASS legend.accessKey: IDL set to true should not throw 
+PASS legend.accessKey: IDL set to true followed by getAttribute() 
+PASS legend.accessKey: IDL set to true followed by IDL get 
+PASS legend.accessKey: IDL set to false should not throw 
+PASS legend.accessKey: IDL set to false followed by getAttribute() 
+PASS legend.accessKey: IDL set to false followed by IDL get 
+PASS legend.accessKey: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS legend.accessKey: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS legend.accessKey: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS legend.accessKey: IDL set to NaN should not throw 
+PASS legend.accessKey: IDL set to NaN followed by getAttribute() 
+PASS legend.accessKey: IDL set to NaN followed by IDL get 
+PASS legend.accessKey: IDL set to Infinity should not throw 
+PASS legend.accessKey: IDL set to Infinity followed by getAttribute() 
+PASS legend.accessKey: IDL set to Infinity followed by IDL get 
+PASS legend.accessKey: IDL set to -Infinity should not throw 
+PASS legend.accessKey: IDL set to -Infinity followed by getAttribute() 
+PASS legend.accessKey: IDL set to -Infinity followed by IDL get 
+PASS legend.accessKey: IDL set to &quot;\0&quot; should not throw 
+PASS legend.accessKey: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS legend.accessKey: IDL set to &quot;\0&quot; followed by IDL get 
+PASS legend.accessKey: IDL set to null should not throw 
+PASS legend.accessKey: IDL set to null followed by getAttribute() 
+PASS legend.accessKey: IDL set to null followed by IDL get 
+PASS legend.accessKey: IDL set to object &quot;test-toString&quot; should not throw 
+PASS legend.accessKey: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS legend.accessKey: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS legend.accessKey: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS legend.accessKey: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS legend.accessKey: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS legend.tabIndex: typeof IDL attribute 
+PASS legend.tabIndex: setAttribute() to -36 followed by getAttribute() 
+PASS legend.tabIndex: setAttribute() to -36 followed by IDL get 
+PASS legend.tabIndex: setAttribute() to -1 followed by getAttribute() 
+PASS legend.tabIndex: setAttribute() to -1 followed by IDL get 
+PASS legend.tabIndex: setAttribute() to 0 followed by getAttribute() 
+PASS legend.tabIndex: setAttribute() to 0 followed by IDL get 
+PASS legend.tabIndex: setAttribute() to 1 followed by getAttribute() 
+PASS legend.tabIndex: setAttribute() to 1 followed by IDL get 
+PASS legend.tabIndex: setAttribute() to 2147483647 followed by getAttribute() 
+PASS legend.tabIndex: setAttribute() to 2147483647 followed by IDL get 
+PASS legend.tabIndex: setAttribute() to -2147483648 followed by getAttribute() 
+PASS legend.tabIndex: setAttribute() to -2147483648 followed by IDL get 
+PASS legend.tabIndex: setAttribute() to &quot;-1&quot; followed by getAttribute() 
+PASS legend.tabIndex: setAttribute() to &quot;-1&quot; followed by IDL get 
+PASS legend.tabIndex: setAttribute() to &quot;-0&quot; followed by getAttribute() 
+PASS legend.tabIndex: setAttribute() to &quot;-0&quot; followed by IDL get 
+PASS legend.tabIndex: setAttribute() to &quot;0&quot; followed by getAttribute() 
+PASS legend.tabIndex: setAttribute() to &quot;0&quot; followed by IDL get 
+PASS legend.tabIndex: setAttribute() to &quot;1&quot; followed by getAttribute() 
+PASS legend.tabIndex: setAttribute() to &quot;1&quot; followed by IDL get 
+PASS legend.tabIndex: setAttribute() to &quot;\t7&quot; followed by getAttribute() 
+PASS legend.tabIndex: setAttribute() to &quot;\t7&quot; followed by IDL get 
+PASS legend.tabIndex: setAttribute() to &quot;\f7&quot; followed by getAttribute() 
+PASS legend.tabIndex: setAttribute() to &quot;\f7&quot; followed by IDL get 
+PASS legend.tabIndex: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS legend.tabIndex: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS legend.tabIndex: setAttribute() to &quot;\n7&quot; followed by getAttribute() 
+PASS legend.tabIndex: setAttribute() to &quot;\n7&quot; followed by IDL get 
+PASS legend.tabIndex: setAttribute() to &quot;\r7&quot; followed by getAttribute() 
+PASS legend.tabIndex: setAttribute() to &quot;\r7&quot; followed by IDL get 
+PASS legend.tabIndex: setAttribute() to 1.5 followed by getAttribute() 
+PASS legend.tabIndex: setAttribute() to 1.5 followed by IDL get 
+PASS legend.tabIndex: setAttribute() to object &quot;2&quot; followed by getAttribute() 
+PASS legend.tabIndex: setAttribute() to object &quot;2&quot; followed by IDL get 
+PASS legend.tabIndex: IDL set to -36 should not throw 
+PASS legend.tabIndex: IDL set to -36 followed by getAttribute() 
+PASS legend.tabIndex: IDL set to -36 followed by IDL get 
+PASS legend.tabIndex: IDL set to -1 should not throw 
+PASS legend.tabIndex: IDL set to -1 followed by getAttribute() 
+PASS legend.tabIndex: IDL set to -1 followed by IDL get 
+PASS legend.tabIndex: IDL set to 0 should not throw 
+PASS legend.tabIndex: IDL set to 0 followed by getAttribute() 
+PASS legend.tabIndex: IDL set to 0 followed by IDL get 
+PASS legend.tabIndex: IDL set to 1 should not throw 
+PASS legend.tabIndex: IDL set to 1 followed by getAttribute() 
+PASS legend.tabIndex: IDL set to 1 followed by IDL get 
+PASS legend.tabIndex: IDL set to 2147483647 should not throw 
+PASS legend.tabIndex: IDL set to 2147483647 followed by getAttribute() 
+PASS legend.tabIndex: IDL set to 2147483647 followed by IDL get 
+PASS legend.tabIndex: IDL set to -2147483648 should not throw 
+PASS legend.tabIndex: IDL set to -2147483648 followed by getAttribute() 
+PASS legend.tabIndex: IDL set to -2147483648 followed by IDL get 
+PASS legend.align: typeof IDL attribute 
+PASS legend.align: IDL get with DOM attribute unset 
+PASS legend.align: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS legend.align: setAttribute() to &quot;&quot; followed by IDL get 
+PASS legend.align: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS legend.align: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS legend.align: setAttribute() to undefined followed by getAttribute() 
+PASS legend.align: setAttribute() to undefined followed by IDL get 
+PASS legend.align: setAttribute() to 7 followed by getAttribute() 
+PASS legend.align: setAttribute() to 7 followed by IDL get 
+PASS legend.align: setAttribute() to 1.5 followed by getAttribute() 
+PASS legend.align: setAttribute() to 1.5 followed by IDL get 
+PASS legend.align: setAttribute() to true followed by getAttribute() 
+PASS legend.align: setAttribute() to true followed by IDL get 
+PASS legend.align: setAttribute() to false followed by getAttribute() 
+PASS legend.align: setAttribute() to false followed by IDL get 
+PASS legend.align: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS legend.align: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS legend.align: setAttribute() to NaN followed by getAttribute() 
+PASS legend.align: setAttribute() to NaN followed by IDL get 
+PASS legend.align: setAttribute() to Infinity followed by getAttribute() 
+PASS legend.align: setAttribute() to Infinity followed by IDL get 
+PASS legend.align: setAttribute() to -Infinity followed by getAttribute() 
+PASS legend.align: setAttribute() to -Infinity followed by IDL get 
+PASS legend.align: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS legend.align: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS legend.align: setAttribute() to null followed by getAttribute() 
+PASS legend.align: setAttribute() to null followed by IDL get 
+PASS legend.align: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS legend.align: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS legend.align: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS legend.align: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS legend.align: IDL set to &quot;&quot; should not throw 
+PASS legend.align: IDL set to &quot;&quot; followed by getAttribute() 
+PASS legend.align: IDL set to &quot;&quot; followed by IDL get 
+PASS legend.align: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS legend.align: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS legend.align: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS legend.align: IDL set to undefined should not throw 
+PASS legend.align: IDL set to undefined followed by getAttribute() 
+PASS legend.align: IDL set to undefined followed by IDL get 
+PASS legend.align: IDL set to 7 should not throw 
+PASS legend.align: IDL set to 7 followed by getAttribute() 
+PASS legend.align: IDL set to 7 followed by IDL get 
+PASS legend.align: IDL set to 1.5 should not throw 
+PASS legend.align: IDL set to 1.5 followed by getAttribute() 
+PASS legend.align: IDL set to 1.5 followed by IDL get 
+PASS legend.align: IDL set to true should not throw 
+PASS legend.align: IDL set to true followed by getAttribute() 
+PASS legend.align: IDL set to true followed by IDL get 
+PASS legend.align: IDL set to false should not throw 
+PASS legend.align: IDL set to false followed by getAttribute() 
+PASS legend.align: IDL set to false followed by IDL get 
+PASS legend.align: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS legend.align: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS legend.align: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS legend.align: IDL set to NaN should not throw 
+PASS legend.align: IDL set to NaN followed by getAttribute() 
+PASS legend.align: IDL set to NaN followed by IDL get 
+PASS legend.align: IDL set to Infinity should not throw 
+PASS legend.align: IDL set to Infinity followed by getAttribute() 
+PASS legend.align: IDL set to Infinity followed by IDL get 
+PASS legend.align: IDL set to -Infinity should not throw 
+PASS legend.align: IDL set to -Infinity followed by getAttribute() 
+PASS legend.align: IDL set to -Infinity followed by IDL get 
+PASS legend.align: IDL set to &quot;\0&quot; should not throw 
+PASS legend.align: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS legend.align: IDL set to &quot;\0&quot; followed by IDL get 
+PASS legend.align: IDL set to null should not throw 
+PASS legend.align: IDL set to null followed by getAttribute() 
+PASS legend.align: IDL set to null followed by IDL get 
+PASS legend.align: IDL set to object &quot;test-toString&quot; should not throw 
+PASS legend.align: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS legend.align: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS legend.align: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS legend.align: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS legend.align: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS label.title: typeof IDL attribute 
+PASS label.title: IDL get with DOM attribute unset 
+PASS label.title: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS label.title: setAttribute() to &quot;&quot; followed by IDL get 
+PASS label.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS label.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS label.title: setAttribute() to undefined followed by getAttribute() 
+PASS label.title: setAttribute() to undefined followed by IDL get 
+PASS label.title: setAttribute() to 7 followed by getAttribute() 
+PASS label.title: setAttribute() to 7 followed by IDL get 
+PASS label.title: setAttribute() to 1.5 followed by getAttribute() 
+PASS label.title: setAttribute() to 1.5 followed by IDL get 
+PASS label.title: setAttribute() to true followed by getAttribute() 
+PASS label.title: setAttribute() to true followed by IDL get 
+PASS label.title: setAttribute() to false followed by getAttribute() 
+PASS label.title: setAttribute() to false followed by IDL get 
+PASS label.title: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS label.title: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS label.title: setAttribute() to NaN followed by getAttribute() 
+PASS label.title: setAttribute() to NaN followed by IDL get 
+PASS label.title: setAttribute() to Infinity followed by getAttribute() 
+PASS label.title: setAttribute() to Infinity followed by IDL get 
+PASS label.title: setAttribute() to -Infinity followed by getAttribute() 
+PASS label.title: setAttribute() to -Infinity followed by IDL get 
+PASS label.title: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS label.title: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS label.title: setAttribute() to null followed by getAttribute() 
+PASS label.title: setAttribute() to null followed by IDL get 
+PASS label.title: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS label.title: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS label.title: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS label.title: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS label.title: IDL set to &quot;&quot; should not throw 
+PASS label.title: IDL set to &quot;&quot; followed by getAttribute() 
+PASS label.title: IDL set to &quot;&quot; followed by IDL get 
+PASS label.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS label.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS label.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS label.title: IDL set to undefined should not throw 
+PASS label.title: IDL set to undefined followed by getAttribute() 
+PASS label.title: IDL set to undefined followed by IDL get 
+PASS label.title: IDL set to 7 should not throw 
+PASS label.title: IDL set to 7 followed by getAttribute() 
+PASS label.title: IDL set to 7 followed by IDL get 
+PASS label.title: IDL set to 1.5 should not throw 
+PASS label.title: IDL set to 1.5 followed by getAttribute() 
+PASS label.title: IDL set to 1.5 followed by IDL get 
+PASS label.title: IDL set to true should not throw 
+PASS label.title: IDL set to true followed by getAttribute() 
+PASS label.title: IDL set to true followed by IDL get 
+PASS label.title: IDL set to false should not throw 
+PASS label.title: IDL set to false followed by getAttribute() 
+PASS label.title: IDL set to false followed by IDL get 
+PASS label.title: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS label.title: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS label.title: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS label.title: IDL set to NaN should not throw 
+PASS label.title: IDL set to NaN followed by getAttribute() 
+PASS label.title: IDL set to NaN followed by IDL get 
+PASS label.title: IDL set to Infinity should not throw 
+PASS label.title: IDL set to Infinity followed by getAttribute() 
+PASS label.title: IDL set to Infinity followed by IDL get 
+PASS label.title: IDL set to -Infinity should not throw 
+PASS label.title: IDL set to -Infinity followed by getAttribute() 
+PASS label.title: IDL set to -Infinity followed by IDL get 
+PASS label.title: IDL set to &quot;\0&quot; should not throw 
+PASS label.title: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS label.title: IDL set to &quot;\0&quot; followed by IDL get 
+PASS label.title: IDL set to null should not throw 
+PASS label.title: IDL set to null followed by getAttribute() 
+PASS label.title: IDL set to null followed by IDL get 
+PASS label.title: IDL set to object &quot;test-toString&quot; should not throw 
+PASS label.title: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS label.title: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS label.title: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS label.title: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS label.title: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS label.lang: typeof IDL attribute 
+PASS label.lang: IDL get with DOM attribute unset 
+PASS label.lang: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS label.lang: setAttribute() to &quot;&quot; followed by IDL get 
+PASS label.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS label.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS label.lang: setAttribute() to undefined followed by getAttribute() 
+PASS label.lang: setAttribute() to undefined followed by IDL get 
+PASS label.lang: setAttribute() to 7 followed by getAttribute() 
+PASS label.lang: setAttribute() to 7 followed by IDL get 
+PASS label.lang: setAttribute() to 1.5 followed by getAttribute() 
+PASS label.lang: setAttribute() to 1.5 followed by IDL get 
+PASS label.lang: setAttribute() to true followed by getAttribute() 
+PASS label.lang: setAttribute() to true followed by IDL get 
+PASS label.lang: setAttribute() to false followed by getAttribute() 
+PASS label.lang: setAttribute() to false followed by IDL get 
+PASS label.lang: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS label.lang: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS label.lang: setAttribute() to NaN followed by getAttribute() 
+PASS label.lang: setAttribute() to NaN followed by IDL get 
+PASS label.lang: setAttribute() to Infinity followed by getAttribute() 
+PASS label.lang: setAttribute() to Infinity followed by IDL get 
+PASS label.lang: setAttribute() to -Infinity followed by getAttribute() 
+PASS label.lang: setAttribute() to -Infinity followed by IDL get 
+PASS label.lang: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS label.lang: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS label.lang: setAttribute() to null followed by getAttribute() 
+PASS label.lang: setAttribute() to null followed by IDL get 
+PASS label.lang: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS label.lang: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS label.lang: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS label.lang: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS label.lang: IDL set to &quot;&quot; should not throw 
+PASS label.lang: IDL set to &quot;&quot; followed by getAttribute() 
+PASS label.lang: IDL set to &quot;&quot; followed by IDL get 
+PASS label.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS label.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS label.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS label.lang: IDL set to undefined should not throw 
+PASS label.lang: IDL set to undefined followed by getAttribute() 
+PASS label.lang: IDL set to undefined followed by IDL get 
+PASS label.lang: IDL set to 7 should not throw 
+PASS label.lang: IDL set to 7 followed by getAttribute() 
+PASS label.lang: IDL set to 7 followed by IDL get 
+PASS label.lang: IDL set to 1.5 should not throw 
+PASS label.lang: IDL set to 1.5 followed by getAttribute() 
+PASS label.lang: IDL set to 1.5 followed by IDL get 
+PASS label.lang: IDL set to true should not throw 
+PASS label.lang: IDL set to true followed by getAttribute() 
+PASS label.lang: IDL set to true followed by IDL get 
+PASS label.lang: IDL set to false should not throw 
+PASS label.lang: IDL set to false followed by getAttribute() 
+PASS label.lang: IDL set to false followed by IDL get 
+PASS label.lang: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS label.lang: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS label.lang: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS label.lang: IDL set to NaN should not throw 
+PASS label.lang: IDL set to NaN followed by getAttribute() 
+PASS label.lang: IDL set to NaN followed by IDL get 
+PASS label.lang: IDL set to Infinity should not throw 
+PASS label.lang: IDL set to Infinity followed by getAttribute() 
+PASS label.lang: IDL set to Infinity followed by IDL get 
+PASS label.lang: IDL set to -Infinity should not throw 
+PASS label.lang: IDL set to -Infinity followed by getAttribute() 
+PASS label.lang: IDL set to -Infinity followed by IDL get 
+PASS label.lang: IDL set to &quot;\0&quot; should not throw 
+PASS label.lang: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS label.lang: IDL set to &quot;\0&quot; followed by IDL get 
+PASS label.lang: IDL set to null should not throw 
+PASS label.lang: IDL set to null followed by getAttribute() 
+PASS label.lang: IDL set to null followed by IDL get 
+PASS label.lang: IDL set to object &quot;test-toString&quot; should not throw 
+PASS label.lang: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS label.lang: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS label.lang: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS label.lang: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS label.lang: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS label.dir: typeof IDL attribute 
+PASS label.dir: IDL get with DOM attribute unset 
+PASS label.dir: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS label.dir: setAttribute() to &quot;&quot; followed by IDL get 
+PASS label.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS label.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS label.dir: setAttribute() to undefined followed by getAttribute() 
+PASS label.dir: setAttribute() to undefined followed by IDL get 
+PASS label.dir: setAttribute() to 7 followed by getAttribute() 
+PASS label.dir: setAttribute() to 7 followed by IDL get 
+PASS label.dir: setAttribute() to 1.5 followed by getAttribute() 
+PASS label.dir: setAttribute() to 1.5 followed by IDL get 
+PASS label.dir: setAttribute() to true followed by getAttribute() 
+PASS label.dir: setAttribute() to true followed by IDL get 
+PASS label.dir: setAttribute() to false followed by getAttribute() 
+PASS label.dir: setAttribute() to false followed by IDL get 
+PASS label.dir: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS label.dir: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS label.dir: setAttribute() to NaN followed by getAttribute() 
+PASS label.dir: setAttribute() to NaN followed by IDL get 
+PASS label.dir: setAttribute() to Infinity followed by getAttribute() 
+PASS label.dir: setAttribute() to Infinity followed by IDL get 
+PASS label.dir: setAttribute() to -Infinity followed by getAttribute() 
+PASS label.dir: setAttribute() to -Infinity followed by IDL get 
+PASS label.dir: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS label.dir: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS label.dir: setAttribute() to null followed by getAttribute() 
+PASS label.dir: setAttribute() to null followed by IDL get 
+PASS label.dir: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS label.dir: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS label.dir: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS label.dir: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS label.dir: setAttribute() to &quot;ltr&quot; followed by getAttribute() 
+PASS label.dir: setAttribute() to &quot;ltr&quot; followed by IDL get 
+PASS label.dir: setAttribute() to &quot;xltr&quot; followed by getAttribute() 
+PASS label.dir: setAttribute() to &quot;xltr&quot; followed by IDL get 
+PASS label.dir: setAttribute() to &quot;ltr\0&quot; followed by getAttribute() 
+PASS label.dir: setAttribute() to &quot;ltr\0&quot; followed by IDL get 
+PASS label.dir: setAttribute() to &quot;tr&quot; followed by getAttribute() 
+PASS label.dir: setAttribute() to &quot;tr&quot; followed by IDL get 
+PASS label.dir: setAttribute() to &quot;LTR&quot; followed by getAttribute() 
+PASS label.dir: setAttribute() to &quot;LTR&quot; followed by IDL get 
+PASS label.dir: setAttribute() to &quot;rtl&quot; followed by getAttribute() 
+PASS label.dir: setAttribute() to &quot;rtl&quot; followed by IDL get 
+PASS label.dir: setAttribute() to &quot;xrtl&quot; followed by getAttribute() 
+PASS label.dir: setAttribute() to &quot;xrtl&quot; followed by IDL get 
+PASS label.dir: setAttribute() to &quot;rtl\0&quot; followed by getAttribute() 
+PASS label.dir: setAttribute() to &quot;rtl\0&quot; followed by IDL get 
+PASS label.dir: setAttribute() to &quot;tl&quot; followed by getAttribute() 
+PASS label.dir: setAttribute() to &quot;tl&quot; followed by IDL get 
+PASS label.dir: setAttribute() to &quot;RTL&quot; followed by getAttribute() 
+PASS label.dir: setAttribute() to &quot;RTL&quot; followed by IDL get 
+PASS label.dir: setAttribute() to &quot;auto&quot; followed by getAttribute() 
+PASS label.dir: setAttribute() to &quot;auto&quot; followed by IDL get 
+PASS label.dir: setAttribute() to &quot;xauto&quot; followed by getAttribute() 
+PASS label.dir: setAttribute() to &quot;xauto&quot; followed by IDL get 
+PASS label.dir: setAttribute() to &quot;auto\0&quot; followed by getAttribute() 
+PASS label.dir: setAttribute() to &quot;auto\0&quot; followed by IDL get 
+PASS label.dir: setAttribute() to &quot;uto&quot; followed by getAttribute() 
+PASS label.dir: setAttribute() to &quot;uto&quot; followed by IDL get 
+PASS label.dir: setAttribute() to &quot;AUTO&quot; followed by getAttribute() 
+PASS label.dir: setAttribute() to &quot;AUTO&quot; followed by IDL get 
+PASS label.dir: IDL set to &quot;&quot; should not throw 
+PASS label.dir: IDL set to &quot;&quot; followed by getAttribute() 
+PASS label.dir: IDL set to &quot;&quot; followed by IDL get 
+PASS label.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS label.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS label.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS label.dir: IDL set to undefined should not throw 
+PASS label.dir: IDL set to undefined followed by getAttribute() 
+PASS label.dir: IDL set to undefined followed by IDL get 
+PASS label.dir: IDL set to 7 should not throw 
+PASS label.dir: IDL set to 7 followed by getAttribute() 
+PASS label.dir: IDL set to 7 followed by IDL get 
+PASS label.dir: IDL set to 1.5 should not throw 
+PASS label.dir: IDL set to 1.5 followed by getAttribute() 
+PASS label.dir: IDL set to 1.5 followed by IDL get 
+PASS label.dir: IDL set to true should not throw 
+PASS label.dir: IDL set to true followed by getAttribute() 
+PASS label.dir: IDL set to true followed by IDL get 
+PASS label.dir: IDL set to false should not throw 
+PASS label.dir: IDL set to false followed by getAttribute() 
+PASS label.dir: IDL set to false followed by IDL get 
+PASS label.dir: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS label.dir: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS label.dir: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS label.dir: IDL set to NaN should not throw 
+PASS label.dir: IDL set to NaN followed by getAttribute() 
+PASS label.dir: IDL set to NaN followed by IDL get 
+PASS label.dir: IDL set to Infinity should not throw 
+PASS label.dir: IDL set to Infinity followed by getAttribute() 
+PASS label.dir: IDL set to Infinity followed by IDL get 
+PASS label.dir: IDL set to -Infinity should not throw 
+PASS label.dir: IDL set to -Infinity followed by getAttribute() 
+PASS label.dir: IDL set to -Infinity followed by IDL get 
+PASS label.dir: IDL set to &quot;\0&quot; should not throw 
+PASS label.dir: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS label.dir: IDL set to &quot;\0&quot; followed by IDL get 
+PASS label.dir: IDL set to null should not throw 
+PASS label.dir: IDL set to null followed by IDL get 
+PASS label.dir: IDL set to object &quot;test-toString&quot; should not throw 
+PASS label.dir: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS label.dir: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS label.dir: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS label.dir: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS label.dir: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS label.dir: IDL set to &quot;ltr&quot; should not throw 
+PASS label.dir: IDL set to &quot;ltr&quot; followed by getAttribute() 
+PASS label.dir: IDL set to &quot;ltr&quot; followed by IDL get 
+PASS label.dir: IDL set to &quot;xltr&quot; should not throw 
+PASS label.dir: IDL set to &quot;xltr&quot; followed by getAttribute() 
+PASS label.dir: IDL set to &quot;xltr&quot; followed by IDL get 
+PASS label.dir: IDL set to &quot;ltr\0&quot; should not throw 
+PASS label.dir: IDL set to &quot;ltr\0&quot; followed by getAttribute() 
+PASS label.dir: IDL set to &quot;ltr\0&quot; followed by IDL get 
+PASS label.dir: IDL set to &quot;tr&quot; should not throw 
+PASS label.dir: IDL set to &quot;tr&quot; followed by getAttribute() 
+PASS label.dir: IDL set to &quot;tr&quot; followed by IDL get 
+PASS label.dir: IDL set to &quot;LTR&quot; should not throw 
+PASS label.dir: IDL set to &quot;LTR&quot; followed by getAttribute() 
+PASS label.dir: IDL set to &quot;LTR&quot; followed by IDL get 
+PASS label.dir: IDL set to &quot;rtl&quot; should not throw 
+PASS label.dir: IDL set to &quot;rtl&quot; followed by getAttribute() 
+PASS label.dir: IDL set to &quot;rtl&quot; followed by IDL get 
+PASS label.dir: IDL set to &quot;xrtl&quot; should not throw 
+PASS label.dir: IDL set to &quot;xrtl&quot; followed by getAttribute() 
+PASS label.dir: IDL set to &quot;xrtl&quot; followed by IDL get 
+PASS label.dir: IDL set to &quot;rtl\0&quot; should not throw 
+PASS label.dir: IDL set to &quot;rtl\0&quot; followed by getAttribute() 
+PASS label.dir: IDL set to &quot;rtl\0&quot; followed by IDL get 
+PASS label.dir: IDL set to &quot;tl&quot; should not throw 
+PASS label.dir: IDL set to &quot;tl&quot; followed by getAttribute() 
+PASS label.dir: IDL set to &quot;tl&quot; followed by IDL get 
+PASS label.dir: IDL set to &quot;RTL&quot; should not throw 
+PASS label.dir: IDL set to &quot;RTL&quot; followed by getAttribute() 
+PASS label.dir: IDL set to &quot;RTL&quot; followed by IDL get 
+PASS label.dir: IDL set to &quot;auto&quot; should not throw 
+PASS label.dir: IDL set to &quot;auto&quot; followed by getAttribute() 
+PASS label.dir: IDL set to &quot;auto&quot; followed by IDL get 
+PASS label.dir: IDL set to &quot;xauto&quot; should not throw 
+PASS label.dir: IDL set to &quot;xauto&quot; followed by getAttribute() 
+PASS label.dir: IDL set to &quot;xauto&quot; followed by IDL get 
+PASS label.dir: IDL set to &quot;auto\0&quot; should not throw 
+PASS label.dir: IDL set to &quot;auto\0&quot; followed by getAttribute() 
+PASS label.dir: IDL set to &quot;auto\0&quot; followed by IDL get 
+PASS label.dir: IDL set to &quot;uto&quot; should not throw 
+PASS label.dir: IDL set to &quot;uto&quot; followed by getAttribute() 
+PASS label.dir: IDL set to &quot;uto&quot; followed by IDL get 
+PASS label.dir: IDL set to &quot;AUTO&quot; should not throw 
+PASS label.dir: IDL set to &quot;AUTO&quot; followed by getAttribute() 
+PASS label.dir: IDL set to &quot;AUTO&quot; followed by IDL get 
+PASS label.className (&lt;label class&gt;): typeof IDL attribute 
+PASS label.className (&lt;label class&gt;): IDL get with DOM attribute unset 
+PASS label.className (&lt;label class&gt;): setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): setAttribute() to &quot;&quot; followed by IDL get 
+PASS label.className (&lt;label class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS label.className (&lt;label class&gt;): setAttribute() to undefined followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): setAttribute() to undefined followed by IDL get 
+PASS label.className (&lt;label class&gt;): setAttribute() to 7 followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): setAttribute() to 7 followed by IDL get 
+PASS label.className (&lt;label class&gt;): setAttribute() to 1.5 followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): setAttribute() to 1.5 followed by IDL get 
+PASS label.className (&lt;label class&gt;): setAttribute() to true followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): setAttribute() to true followed by IDL get 
+PASS label.className (&lt;label class&gt;): setAttribute() to false followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): setAttribute() to false followed by IDL get 
+PASS label.className (&lt;label class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS label.className (&lt;label class&gt;): setAttribute() to NaN followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): setAttribute() to NaN followed by IDL get 
+PASS label.className (&lt;label class&gt;): setAttribute() to Infinity followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): setAttribute() to Infinity followed by IDL get 
+PASS label.className (&lt;label class&gt;): setAttribute() to -Infinity followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): setAttribute() to -Infinity followed by IDL get 
+PASS label.className (&lt;label class&gt;): setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS label.className (&lt;label class&gt;): setAttribute() to null followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): setAttribute() to null followed by IDL get 
+PASS label.className (&lt;label class&gt;): setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS label.className (&lt;label class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS label.className (&lt;label class&gt;): IDL set to &quot;&quot; should not throw 
+PASS label.className (&lt;label class&gt;): IDL set to &quot;&quot; followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): IDL set to &quot;&quot; followed by IDL get 
+PASS label.className (&lt;label class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS label.className (&lt;label class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS label.className (&lt;label class&gt;): IDL set to undefined should not throw 
+PASS label.className (&lt;label class&gt;): IDL set to undefined followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): IDL set to undefined followed by IDL get 
+PASS label.className (&lt;label class&gt;): IDL set to 7 should not throw 
+PASS label.className (&lt;label class&gt;): IDL set to 7 followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): IDL set to 7 followed by IDL get 
+PASS label.className (&lt;label class&gt;): IDL set to 1.5 should not throw 
+PASS label.className (&lt;label class&gt;): IDL set to 1.5 followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): IDL set to 1.5 followed by IDL get 
+PASS label.className (&lt;label class&gt;): IDL set to true should not throw 
+PASS label.className (&lt;label class&gt;): IDL set to true followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): IDL set to true followed by IDL get 
+PASS label.className (&lt;label class&gt;): IDL set to false should not throw 
+PASS label.className (&lt;label class&gt;): IDL set to false followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): IDL set to false followed by IDL get 
+PASS label.className (&lt;label class&gt;): IDL set to object &quot;[object Object]&quot; should not throw 
+PASS label.className (&lt;label class&gt;): IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS label.className (&lt;label class&gt;): IDL set to NaN should not throw 
+PASS label.className (&lt;label class&gt;): IDL set to NaN followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): IDL set to NaN followed by IDL get 
+PASS label.className (&lt;label class&gt;): IDL set to Infinity should not throw 
+PASS label.className (&lt;label class&gt;): IDL set to Infinity followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): IDL set to Infinity followed by IDL get 
+PASS label.className (&lt;label class&gt;): IDL set to -Infinity should not throw 
+PASS label.className (&lt;label class&gt;): IDL set to -Infinity followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): IDL set to -Infinity followed by IDL get 
+PASS label.className (&lt;label class&gt;): IDL set to &quot;\0&quot; should not throw 
+PASS label.className (&lt;label class&gt;): IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): IDL set to &quot;\0&quot; followed by IDL get 
+PASS label.className (&lt;label class&gt;): IDL set to null should not throw 
+PASS label.className (&lt;label class&gt;): IDL set to null followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): IDL set to null followed by IDL get 
+PASS label.className (&lt;label class&gt;): IDL set to object &quot;test-toString&quot; should not throw 
+PASS label.className (&lt;label class&gt;): IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS label.className (&lt;label class&gt;): IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS label.className (&lt;label class&gt;): IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS label.className (&lt;label class&gt;): IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS label.hidden: typeof IDL attribute 
+PASS label.hidden: IDL get with DOM attribute unset 
+PASS label.hidden: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS label.hidden: setAttribute() to &quot;&quot; followed by IDL get 
+PASS label.hidden: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS label.hidden: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS label.hidden: setAttribute() to undefined followed by getAttribute() 
+PASS label.hidden: setAttribute() to undefined followed by IDL get 
+PASS label.hidden: setAttribute() to null followed by getAttribute() 
+PASS label.hidden: setAttribute() to null followed by IDL get 
+PASS label.hidden: setAttribute() to 7 followed by getAttribute() 
+PASS label.hidden: setAttribute() to 7 followed by IDL get 
+PASS label.hidden: setAttribute() to 1.5 followed by getAttribute() 
+PASS label.hidden: setAttribute() to 1.5 followed by IDL get 
+PASS label.hidden: setAttribute() to true followed by getAttribute() 
+PASS label.hidden: setAttribute() to true followed by IDL get 
+PASS label.hidden: setAttribute() to false followed by getAttribute() 
+PASS label.hidden: setAttribute() to false followed by IDL get 
+PASS label.hidden: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS label.hidden: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS label.hidden: setAttribute() to NaN followed by getAttribute() 
+PASS label.hidden: setAttribute() to NaN followed by IDL get 
+PASS label.hidden: setAttribute() to Infinity followed by getAttribute() 
+PASS label.hidden: setAttribute() to Infinity followed by IDL get 
+PASS label.hidden: setAttribute() to -Infinity followed by getAttribute() 
+PASS label.hidden: setAttribute() to -Infinity followed by IDL get 
+PASS label.hidden: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS label.hidden: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS label.hidden: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS label.hidden: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS label.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS label.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS label.hidden: setAttribute() to &quot;hidden&quot; followed by getAttribute() 
+PASS label.hidden: setAttribute() to &quot;hidden&quot; followed by IDL get 
+PASS label.hidden: IDL set to &quot;&quot; should not throw 
+PASS label.hidden: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS label.hidden: IDL set to &quot;&quot; followed by IDL get 
+PASS label.hidden: IDL set to &quot; foo &quot; should not throw 
+PASS label.hidden: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS label.hidden: IDL set to &quot; foo &quot; followed by IDL get 
+PASS label.hidden: IDL set to undefined should not throw 
+PASS label.hidden: IDL set to undefined followed by hasAttribute() 
+PASS label.hidden: IDL set to undefined followed by IDL get 
+PASS label.hidden: IDL set to null should not throw 
+PASS label.hidden: IDL set to null followed by hasAttribute() 
+PASS label.hidden: IDL set to null followed by IDL get 
+PASS label.hidden: IDL set to 7 should not throw 
+PASS label.hidden: IDL set to 7 followed by hasAttribute() 
+PASS label.hidden: IDL set to 7 followed by IDL get 
+PASS label.hidden: IDL set to 1.5 should not throw 
+PASS label.hidden: IDL set to 1.5 followed by hasAttribute() 
+PASS label.hidden: IDL set to 1.5 followed by IDL get 
+PASS label.hidden: IDL set to true should not throw 
+PASS label.hidden: IDL set to true followed by hasAttribute() 
+PASS label.hidden: IDL set to true followed by IDL get 
+PASS label.hidden: IDL set to false should not throw 
+PASS label.hidden: IDL set to false followed by hasAttribute() 
+PASS label.hidden: IDL set to false followed by IDL get 
+PASS label.hidden: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS label.hidden: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS label.hidden: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS label.hidden: IDL set to NaN should not throw 
+PASS label.hidden: IDL set to NaN followed by hasAttribute() 
+PASS label.hidden: IDL set to NaN followed by IDL get 
+PASS label.hidden: IDL set to Infinity should not throw 
+PASS label.hidden: IDL set to Infinity followed by hasAttribute() 
+PASS label.hidden: IDL set to Infinity followed by IDL get 
+PASS label.hidden: IDL set to -Infinity should not throw 
+PASS label.hidden: IDL set to -Infinity followed by hasAttribute() 
+PASS label.hidden: IDL set to -Infinity followed by IDL get 
+PASS label.hidden: IDL set to &quot;\0&quot; should not throw 
+PASS label.hidden: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS label.hidden: IDL set to &quot;\0&quot; followed by IDL get 
+PASS label.hidden: IDL set to object &quot;test-toString&quot; should not throw 
+PASS label.hidden: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS label.hidden: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS label.hidden: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS label.hidden: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS label.hidden: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS label.accessKey: typeof IDL attribute 
+PASS label.accessKey: IDL get with DOM attribute unset 
+PASS label.accessKey: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS label.accessKey: setAttribute() to &quot;&quot; followed by IDL get 
+PASS label.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS label.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS label.accessKey: setAttribute() to undefined followed by getAttribute() 
+PASS label.accessKey: setAttribute() to undefined followed by IDL get 
+PASS label.accessKey: setAttribute() to 7 followed by getAttribute() 
+PASS label.accessKey: setAttribute() to 7 followed by IDL get 
+PASS label.accessKey: setAttribute() to 1.5 followed by getAttribute() 
+PASS label.accessKey: setAttribute() to 1.5 followed by IDL get 
+PASS label.accessKey: setAttribute() to true followed by getAttribute() 
+PASS label.accessKey: setAttribute() to true followed by IDL get 
+PASS label.accessKey: setAttribute() to false followed by getAttribute() 
+PASS label.accessKey: setAttribute() to false followed by IDL get 
+PASS label.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS label.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS label.accessKey: setAttribute() to NaN followed by getAttribute() 
+PASS label.accessKey: setAttribute() to NaN followed by IDL get 
+PASS label.accessKey: setAttribute() to Infinity followed by getAttribute() 
+PASS label.accessKey: setAttribute() to Infinity followed by IDL get 
+PASS label.accessKey: setAttribute() to -Infinity followed by getAttribute() 
+PASS label.accessKey: setAttribute() to -Infinity followed by IDL get 
+PASS label.accessKey: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS label.accessKey: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS label.accessKey: setAttribute() to null followed by getAttribute() 
+PASS label.accessKey: setAttribute() to null followed by IDL get 
+PASS label.accessKey: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS label.accessKey: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS label.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS label.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS label.accessKey: IDL set to &quot;&quot; should not throw 
+PASS label.accessKey: IDL set to &quot;&quot; followed by getAttribute() 
+PASS label.accessKey: IDL set to &quot;&quot; followed by IDL get 
+PASS label.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS label.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS label.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS label.accessKey: IDL set to undefined should not throw 
+PASS label.accessKey: IDL set to undefined followed by getAttribute() 
+PASS label.accessKey: IDL set to undefined followed by IDL get 
+PASS label.accessKey: IDL set to 7 should not throw 
+PASS label.accessKey: IDL set to 7 followed by getAttribute() 
+PASS label.accessKey: IDL set to 7 followed by IDL get 
+PASS label.accessKey: IDL set to 1.5 should not throw 
+PASS label.accessKey: IDL set to 1.5 followed by getAttribute() 
+PASS label.accessKey: IDL set to 1.5 followed by IDL get 
+PASS label.accessKey: IDL set to true should not throw 
+PASS label.accessKey: IDL set to true followed by getAttribute() 
+PASS label.accessKey: IDL set to true followed by IDL get 
+PASS label.accessKey: IDL set to false should not throw 
+PASS label.accessKey: IDL set to false followed by getAttribute() 
+PASS label.accessKey: IDL set to false followed by IDL get 
+PASS label.accessKey: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS label.accessKey: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS label.accessKey: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS label.accessKey: IDL set to NaN should not throw 
+PASS label.accessKey: IDL set to NaN followed by getAttribute() 
+PASS label.accessKey: IDL set to NaN followed by IDL get 
+PASS label.accessKey: IDL set to Infinity should not throw 
+PASS label.accessKey: IDL set to Infinity followed by getAttribute() 
+PASS label.accessKey: IDL set to Infinity followed by IDL get 
+PASS label.accessKey: IDL set to -Infinity should not throw 
+PASS label.accessKey: IDL set to -Infinity followed by getAttribute() 
+PASS label.accessKey: IDL set to -Infinity followed by IDL get 
+PASS label.accessKey: IDL set to &quot;\0&quot; should not throw 
+PASS label.accessKey: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS label.accessKey: IDL set to &quot;\0&quot; followed by IDL get 
+PASS label.accessKey: IDL set to null should not throw 
+PASS label.accessKey: IDL set to null followed by getAttribute() 
+PASS label.accessKey: IDL set to null followed by IDL get 
+PASS label.accessKey: IDL set to object &quot;test-toString&quot; should not throw 
+PASS label.accessKey: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS label.accessKey: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS label.accessKey: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS label.accessKey: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS label.accessKey: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS label.tabIndex: typeof IDL attribute 
+PASS label.tabIndex: setAttribute() to -36 followed by getAttribute() 
+PASS label.tabIndex: setAttribute() to -36 followed by IDL get 
+PASS label.tabIndex: setAttribute() to -1 followed by getAttribute() 
+PASS label.tabIndex: setAttribute() to -1 followed by IDL get 
+PASS label.tabIndex: setAttribute() to 0 followed by getAttribute() 
+PASS label.tabIndex: setAttribute() to 0 followed by IDL get 
+PASS label.tabIndex: setAttribute() to 1 followed by getAttribute() 
+PASS label.tabIndex: setAttribute() to 1 followed by IDL get 
+PASS label.tabIndex: setAttribute() to 2147483647 followed by getAttribute() 
+PASS label.tabIndex: setAttribute() to 2147483647 followed by IDL get 
+PASS label.tabIndex: setAttribute() to -2147483648 followed by getAttribute() 
+PASS label.tabIndex: setAttribute() to -2147483648 followed by IDL get 
+PASS label.tabIndex: setAttribute() to &quot;-1&quot; followed by getAttribute() 
+PASS label.tabIndex: setAttribute() to &quot;-1&quot; followed by IDL get 
+PASS label.tabIndex: setAttribute() to &quot;-0&quot; followed by getAttribute() 
+PASS label.tabIndex: setAttribute() to &quot;-0&quot; followed by IDL get 
+PASS label.tabIndex: setAttribute() to &quot;0&quot; followed by getAttribute() 
+PASS label.tabIndex: setAttribute() to &quot;0&quot; followed by IDL get 
+PASS label.tabIndex: setAttribute() to &quot;1&quot; followed by getAttribute() 
+PASS label.tabIndex: setAttribute() to &quot;1&quot; followed by IDL get 
+PASS label.tabIndex: setAttribute() to &quot;\t7&quot; followed by getAttribute() 
+PASS label.tabIndex: setAttribute() to &quot;\t7&quot; followed by IDL get 
+PASS label.tabIndex: setAttribute() to &quot;\f7&quot; followed by getAttribute() 
+PASS label.tabIndex: setAttribute() to &quot;\f7&quot; followed by IDL get 
+PASS label.tabIndex: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS label.tabIndex: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS label.tabIndex: setAttribute() to &quot;\n7&quot; followed by getAttribute() 
+PASS label.tabIndex: setAttribute() to &quot;\n7&quot; followed by IDL get 
+PASS label.tabIndex: setAttribute() to &quot;\r7&quot; followed by getAttribute() 
+PASS label.tabIndex: setAttribute() to &quot;\r7&quot; followed by IDL get 
+PASS label.tabIndex: setAttribute() to 1.5 followed by getAttribute() 
+PASS label.tabIndex: setAttribute() to 1.5 followed by IDL get 
+PASS label.tabIndex: setAttribute() to object &quot;2&quot; followed by getAttribute() 
+PASS label.tabIndex: setAttribute() to object &quot;2&quot; followed by IDL get 
+PASS label.tabIndex: IDL set to -36 should not throw 
+PASS label.tabIndex: IDL set to -36 followed by getAttribute() 
+PASS label.tabIndex: IDL set to -36 followed by IDL get 
+PASS label.tabIndex: IDL set to -1 should not throw 
+PASS label.tabIndex: IDL set to -1 followed by getAttribute() 
+PASS label.tabIndex: IDL set to -1 followed by IDL get 
+PASS label.tabIndex: IDL set to 0 should not throw 
+PASS label.tabIndex: IDL set to 0 followed by getAttribute() 
+PASS label.tabIndex: IDL set to 0 followed by IDL get 
+PASS label.tabIndex: IDL set to 1 should not throw 
+PASS label.tabIndex: IDL set to 1 followed by getAttribute() 
+PASS label.tabIndex: IDL set to 1 followed by IDL get 
+PASS label.tabIndex: IDL set to 2147483647 should not throw 
+PASS label.tabIndex: IDL set to 2147483647 followed by getAttribute() 
+PASS label.tabIndex: IDL set to 2147483647 followed by IDL get 
+PASS label.tabIndex: IDL set to -2147483648 should not throw 
+PASS label.tabIndex: IDL set to -2147483648 followed by getAttribute() 
+PASS label.tabIndex: IDL set to -2147483648 followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): typeof IDL attribute 
+PASS label.htmlFor (&lt;label for&gt;): IDL get with DOM attribute unset 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to &quot;&quot; followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to undefined followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to undefined followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to 7 followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to 7 followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to 1.5 followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to 1.5 followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to true followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to true followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to false followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to false followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to NaN followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to NaN followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to Infinity followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to Infinity followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to -Infinity followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to -Infinity followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to null followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to null followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to &quot;&quot; should not throw 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to &quot;&quot; followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to &quot;&quot; followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to undefined should not throw 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to undefined followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to undefined followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to 7 should not throw 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to 7 followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to 7 followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to 1.5 should not throw 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to 1.5 followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to 1.5 followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to true should not throw 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to true followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to true followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to false should not throw 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to false followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to false followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to object &quot;[object Object]&quot; should not throw 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to NaN should not throw 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to NaN followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to NaN followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to Infinity should not throw 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to Infinity followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to Infinity followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to -Infinity should not throw 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to -Infinity followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to -Infinity followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to &quot;\0&quot; should not throw 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to &quot;\0&quot; followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to null should not throw 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to null followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to null followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to object &quot;test-toString&quot; should not throw 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS label.htmlFor (&lt;label for&gt;): IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.title: typeof IDL attribute 
+PASS input.title: IDL get with DOM attribute unset 
+PASS input.title: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.title: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.title: setAttribute() to undefined followed by getAttribute() 
+PASS input.title: setAttribute() to undefined followed by IDL get 
+PASS input.title: setAttribute() to 7 followed by getAttribute() 
+PASS input.title: setAttribute() to 7 followed by IDL get 
+PASS input.title: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.title: setAttribute() to 1.5 followed by IDL get 
+PASS input.title: setAttribute() to true followed by getAttribute() 
+PASS input.title: setAttribute() to true followed by IDL get 
+PASS input.title: setAttribute() to false followed by getAttribute() 
+PASS input.title: setAttribute() to false followed by IDL get 
+PASS input.title: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.title: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.title: setAttribute() to NaN followed by getAttribute() 
+PASS input.title: setAttribute() to NaN followed by IDL get 
+PASS input.title: setAttribute() to Infinity followed by getAttribute() 
+PASS input.title: setAttribute() to Infinity followed by IDL get 
+PASS input.title: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.title: setAttribute() to -Infinity followed by IDL get 
+PASS input.title: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.title: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.title: setAttribute() to null followed by getAttribute() 
+PASS input.title: setAttribute() to null followed by IDL get 
+PASS input.title: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.title: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.title: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.title: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.title: IDL set to &quot;&quot; should not throw 
+PASS input.title: IDL set to &quot;&quot; followed by getAttribute() 
+PASS input.title: IDL set to &quot;&quot; followed by IDL get 
+PASS input.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS input.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.title: IDL set to undefined should not throw 
+PASS input.title: IDL set to undefined followed by getAttribute() 
+PASS input.title: IDL set to undefined followed by IDL get 
+PASS input.title: IDL set to 7 should not throw 
+PASS input.title: IDL set to 7 followed by getAttribute() 
+PASS input.title: IDL set to 7 followed by IDL get 
+PASS input.title: IDL set to 1.5 should not throw 
+PASS input.title: IDL set to 1.5 followed by getAttribute() 
+PASS input.title: IDL set to 1.5 followed by IDL get 
+PASS input.title: IDL set to true should not throw 
+PASS input.title: IDL set to true followed by getAttribute() 
+PASS input.title: IDL set to true followed by IDL get 
+PASS input.title: IDL set to false should not throw 
+PASS input.title: IDL set to false followed by getAttribute() 
+PASS input.title: IDL set to false followed by IDL get 
+PASS input.title: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.title: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.title: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.title: IDL set to NaN should not throw 
+PASS input.title: IDL set to NaN followed by getAttribute() 
+PASS input.title: IDL set to NaN followed by IDL get 
+PASS input.title: IDL set to Infinity should not throw 
+PASS input.title: IDL set to Infinity followed by getAttribute() 
+PASS input.title: IDL set to Infinity followed by IDL get 
+PASS input.title: IDL set to -Infinity should not throw 
+PASS input.title: IDL set to -Infinity followed by getAttribute() 
+PASS input.title: IDL set to -Infinity followed by IDL get 
+PASS input.title: IDL set to &quot;\0&quot; should not throw 
+PASS input.title: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS input.title: IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.title: IDL set to null should not throw 
+PASS input.title: IDL set to null followed by getAttribute() 
+PASS input.title: IDL set to null followed by IDL get 
+PASS input.title: IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.title: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.title: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.title: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.title: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.title: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.lang: typeof IDL attribute 
+PASS input.lang: IDL get with DOM attribute unset 
+PASS input.lang: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.lang: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.lang: setAttribute() to undefined followed by getAttribute() 
+PASS input.lang: setAttribute() to undefined followed by IDL get 
+PASS input.lang: setAttribute() to 7 followed by getAttribute() 
+PASS input.lang: setAttribute() to 7 followed by IDL get 
+PASS input.lang: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.lang: setAttribute() to 1.5 followed by IDL get 
+PASS input.lang: setAttribute() to true followed by getAttribute() 
+PASS input.lang: setAttribute() to true followed by IDL get 
+PASS input.lang: setAttribute() to false followed by getAttribute() 
+PASS input.lang: setAttribute() to false followed by IDL get 
+PASS input.lang: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.lang: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.lang: setAttribute() to NaN followed by getAttribute() 
+PASS input.lang: setAttribute() to NaN followed by IDL get 
+PASS input.lang: setAttribute() to Infinity followed by getAttribute() 
+PASS input.lang: setAttribute() to Infinity followed by IDL get 
+PASS input.lang: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.lang: setAttribute() to -Infinity followed by IDL get 
+PASS input.lang: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.lang: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.lang: setAttribute() to null followed by getAttribute() 
+PASS input.lang: setAttribute() to null followed by IDL get 
+PASS input.lang: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.lang: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.lang: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.lang: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.lang: IDL set to &quot;&quot; should not throw 
+PASS input.lang: IDL set to &quot;&quot; followed by getAttribute() 
+PASS input.lang: IDL set to &quot;&quot; followed by IDL get 
+PASS input.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS input.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.lang: IDL set to undefined should not throw 
+PASS input.lang: IDL set to undefined followed by getAttribute() 
+PASS input.lang: IDL set to undefined followed by IDL get 
+PASS input.lang: IDL set to 7 should not throw 
+PASS input.lang: IDL set to 7 followed by getAttribute() 
+PASS input.lang: IDL set to 7 followed by IDL get 
+PASS input.lang: IDL set to 1.5 should not throw 
+PASS input.lang: IDL set to 1.5 followed by getAttribute() 
+PASS input.lang: IDL set to 1.5 followed by IDL get 
+PASS input.lang: IDL set to true should not throw 
+PASS input.lang: IDL set to true followed by getAttribute() 
+PASS input.lang: IDL set to true followed by IDL get 
+PASS input.lang: IDL set to false should not throw 
+PASS input.lang: IDL set to false followed by getAttribute() 
+PASS input.lang: IDL set to false followed by IDL get 
+PASS input.lang: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.lang: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.lang: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.lang: IDL set to NaN should not throw 
+PASS input.lang: IDL set to NaN followed by getAttribute() 
+PASS input.lang: IDL set to NaN followed by IDL get 
+PASS input.lang: IDL set to Infinity should not throw 
+PASS input.lang: IDL set to Infinity followed by getAttribute() 
+PASS input.lang: IDL set to Infinity followed by IDL get 
+PASS input.lang: IDL set to -Infinity should not throw 
+PASS input.lang: IDL set to -Infinity followed by getAttribute() 
+PASS input.lang: IDL set to -Infinity followed by IDL get 
+PASS input.lang: IDL set to &quot;\0&quot; should not throw 
+PASS input.lang: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS input.lang: IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.lang: IDL set to null should not throw 
+PASS input.lang: IDL set to null followed by getAttribute() 
+PASS input.lang: IDL set to null followed by IDL get 
+PASS input.lang: IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.lang: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.lang: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.lang: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.lang: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.lang: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.dir: typeof IDL attribute 
+PASS input.dir: IDL get with DOM attribute unset 
+PASS input.dir: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.dir: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.dir: setAttribute() to undefined followed by getAttribute() 
+PASS input.dir: setAttribute() to undefined followed by IDL get 
+PASS input.dir: setAttribute() to 7 followed by getAttribute() 
+PASS input.dir: setAttribute() to 7 followed by IDL get 
+PASS input.dir: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.dir: setAttribute() to 1.5 followed by IDL get 
+PASS input.dir: setAttribute() to true followed by getAttribute() 
+PASS input.dir: setAttribute() to true followed by IDL get 
+PASS input.dir: setAttribute() to false followed by getAttribute() 
+PASS input.dir: setAttribute() to false followed by IDL get 
+PASS input.dir: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.dir: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.dir: setAttribute() to NaN followed by getAttribute() 
+PASS input.dir: setAttribute() to NaN followed by IDL get 
+PASS input.dir: setAttribute() to Infinity followed by getAttribute() 
+PASS input.dir: setAttribute() to Infinity followed by IDL get 
+PASS input.dir: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.dir: setAttribute() to -Infinity followed by IDL get 
+PASS input.dir: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.dir: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.dir: setAttribute() to null followed by getAttribute() 
+PASS input.dir: setAttribute() to null followed by IDL get 
+PASS input.dir: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.dir: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.dir: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.dir: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.dir: setAttribute() to &quot;ltr&quot; followed by getAttribute() 
+PASS input.dir: setAttribute() to &quot;ltr&quot; followed by IDL get 
+PASS input.dir: setAttribute() to &quot;xltr&quot; followed by getAttribute() 
+PASS input.dir: setAttribute() to &quot;xltr&quot; followed by IDL get 
+PASS input.dir: setAttribute() to &quot;ltr\0&quot; followed by getAttribute() 
+PASS input.dir: setAttribute() to &quot;ltr\0&quot; followed by IDL get 
+PASS input.dir: setAttribute() to &quot;tr&quot; followed by getAttribute() 
+PASS input.dir: setAttribute() to &quot;tr&quot; followed by IDL get 
+PASS input.dir: setAttribute() to &quot;LTR&quot; followed by getAttribute() 
+PASS input.dir: setAttribute() to &quot;LTR&quot; followed by IDL get 
+PASS input.dir: setAttribute() to &quot;rtl&quot; followed by getAttribute() 
+PASS input.dir: setAttribute() to &quot;rtl&quot; followed by IDL get 
+PASS input.dir: setAttribute() to &quot;xrtl&quot; followed by getAttribute() 
+PASS input.dir: setAttribute() to &quot;xrtl&quot; followed by IDL get 
+PASS input.dir: setAttribute() to &quot;rtl\0&quot; followed by getAttribute() 
+PASS input.dir: setAttribute() to &quot;rtl\0&quot; followed by IDL get 
+PASS input.dir: setAttribute() to &quot;tl&quot; followed by getAttribute() 
+PASS input.dir: setAttribute() to &quot;tl&quot; followed by IDL get 
+PASS input.dir: setAttribute() to &quot;RTL&quot; followed by getAttribute() 
+PASS input.dir: setAttribute() to &quot;RTL&quot; followed by IDL get 
+PASS input.dir: setAttribute() to &quot;auto&quot; followed by getAttribute() 
+PASS input.dir: setAttribute() to &quot;auto&quot; followed by IDL get 
+PASS input.dir: setAttribute() to &quot;xauto&quot; followed by getAttribute() 
+PASS input.dir: setAttribute() to &quot;xauto&quot; followed by IDL get 
+PASS input.dir: setAttribute() to &quot;auto\0&quot; followed by getAttribute() 
+PASS input.dir: setAttribute() to &quot;auto\0&quot; followed by IDL get 
+PASS input.dir: setAttribute() to &quot;uto&quot; followed by getAttribute() 
+PASS input.dir: setAttribute() to &quot;uto&quot; followed by IDL get 
+PASS input.dir: setAttribute() to &quot;AUTO&quot; followed by getAttribute() 
+PASS input.dir: setAttribute() to &quot;AUTO&quot; followed by IDL get 
+PASS input.dir: IDL set to &quot;&quot; should not throw 
+PASS input.dir: IDL set to &quot;&quot; followed by getAttribute() 
+PASS input.dir: IDL set to &quot;&quot; followed by IDL get 
+PASS input.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS input.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.dir: IDL set to undefined should not throw 
+PASS input.dir: IDL set to undefined followed by getAttribute() 
+PASS input.dir: IDL set to undefined followed by IDL get 
+PASS input.dir: IDL set to 7 should not throw 
+PASS input.dir: IDL set to 7 followed by getAttribute() 
+PASS input.dir: IDL set to 7 followed by IDL get 
+PASS input.dir: IDL set to 1.5 should not throw 
+PASS input.dir: IDL set to 1.5 followed by getAttribute() 
+PASS input.dir: IDL set to 1.5 followed by IDL get 
+PASS input.dir: IDL set to true should not throw 
+PASS input.dir: IDL set to true followed by getAttribute() 
+PASS input.dir: IDL set to true followed by IDL get 
+PASS input.dir: IDL set to false should not throw 
+PASS input.dir: IDL set to false followed by getAttribute() 
+PASS input.dir: IDL set to false followed by IDL get 
+PASS input.dir: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.dir: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.dir: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.dir: IDL set to NaN should not throw 
+PASS input.dir: IDL set to NaN followed by getAttribute() 
+PASS input.dir: IDL set to NaN followed by IDL get 
+PASS input.dir: IDL set to Infinity should not throw 
+PASS input.dir: IDL set to Infinity followed by getAttribute() 
+PASS input.dir: IDL set to Infinity followed by IDL get 
+PASS input.dir: IDL set to -Infinity should not throw 
+PASS input.dir: IDL set to -Infinity followed by getAttribute() 
+PASS input.dir: IDL set to -Infinity followed by IDL get 
+PASS input.dir: IDL set to &quot;\0&quot; should not throw 
+PASS input.dir: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS input.dir: IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.dir: IDL set to null should not throw 
+PASS input.dir: IDL set to null followed by IDL get 
+PASS input.dir: IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.dir: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.dir: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.dir: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.dir: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.dir: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.dir: IDL set to &quot;ltr&quot; should not throw 
+PASS input.dir: IDL set to &quot;ltr&quot; followed by getAttribute() 
+PASS input.dir: IDL set to &quot;ltr&quot; followed by IDL get 
+PASS input.dir: IDL set to &quot;xltr&quot; should not throw 
+PASS input.dir: IDL set to &quot;xltr&quot; followed by getAttribute() 
+PASS input.dir: IDL set to &quot;xltr&quot; followed by IDL get 
+PASS input.dir: IDL set to &quot;ltr\0&quot; should not throw 
+PASS input.dir: IDL set to &quot;ltr\0&quot; followed by getAttribute() 
+PASS input.dir: IDL set to &quot;ltr\0&quot; followed by IDL get 
+PASS input.dir: IDL set to &quot;tr&quot; should not throw 
+PASS input.dir: IDL set to &quot;tr&quot; followed by getAttribute() 
+PASS input.dir: IDL set to &quot;tr&quot; followed by IDL get 
+PASS input.dir: IDL set to &quot;LTR&quot; should not throw 
+PASS input.dir: IDL set to &quot;LTR&quot; followed by getAttribute() 
+PASS input.dir: IDL set to &quot;LTR&quot; followed by IDL get 
+PASS input.dir: IDL set to &quot;rtl&quot; should not throw 
+PASS input.dir: IDL set to &quot;rtl&quot; followed by getAttribute() 
+PASS input.dir: IDL set to &quot;rtl&quot; followed by IDL get 
+PASS input.dir: IDL set to &quot;xrtl&quot; should not throw 
+PASS input.dir: IDL set to &quot;xrtl&quot; followed by getAttribute() 
+PASS input.dir: IDL set to &quot;xrtl&quot; followed by IDL get 
+PASS input.dir: IDL set to &quot;rtl\0&quot; should not throw 
+PASS input.dir: IDL set to &quot;rtl\0&quot; followed by getAttribute() 
+PASS input.dir: IDL set to &quot;rtl\0&quot; followed by IDL get 
+PASS input.dir: IDL set to &quot;tl&quot; should not throw 
+PASS input.dir: IDL set to &quot;tl&quot; followed by getAttribute() 
+PASS input.dir: IDL set to &quot;tl&quot; followed by IDL get 
+PASS input.dir: IDL set to &quot;RTL&quot; should not throw 
+PASS input.dir: IDL set to &quot;RTL&quot; followed by getAttribute() 
+PASS input.dir: IDL set to &quot;RTL&quot; followed by IDL get 
+PASS input.dir: IDL set to &quot;auto&quot; should not throw 
+PASS input.dir: IDL set to &quot;auto&quot; followed by getAttribute() 
+PASS input.dir: IDL set to &quot;auto&quot; followed by IDL get 
+PASS input.dir: IDL set to &quot;xauto&quot; should not throw 
+PASS input.dir: IDL set to &quot;xauto&quot; followed by getAttribute() 
+PASS input.dir: IDL set to &quot;xauto&quot; followed by IDL get 
+PASS input.dir: IDL set to &quot;auto\0&quot; should not throw 
+PASS input.dir: IDL set to &quot;auto\0&quot; followed by getAttribute() 
+PASS input.dir: IDL set to &quot;auto\0&quot; followed by IDL get 
+PASS input.dir: IDL set to &quot;uto&quot; should not throw 
+PASS input.dir: IDL set to &quot;uto&quot; followed by getAttribute() 
+PASS input.dir: IDL set to &quot;uto&quot; followed by IDL get 
+PASS input.dir: IDL set to &quot;AUTO&quot; should not throw 
+PASS input.dir: IDL set to &quot;AUTO&quot; followed by getAttribute() 
+PASS input.dir: IDL set to &quot;AUTO&quot; followed by IDL get 
+PASS input.className (&lt;input class&gt;): typeof IDL attribute 
+PASS input.className (&lt;input class&gt;): IDL get with DOM attribute unset 
+PASS input.className (&lt;input class&gt;): setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.className (&lt;input class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.className (&lt;input class&gt;): setAttribute() to undefined followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): setAttribute() to undefined followed by IDL get 
+PASS input.className (&lt;input class&gt;): setAttribute() to 7 followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): setAttribute() to 7 followed by IDL get 
+PASS input.className (&lt;input class&gt;): setAttribute() to 1.5 followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): setAttribute() to 1.5 followed by IDL get 
+PASS input.className (&lt;input class&gt;): setAttribute() to true followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): setAttribute() to true followed by IDL get 
+PASS input.className (&lt;input class&gt;): setAttribute() to false followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): setAttribute() to false followed by IDL get 
+PASS input.className (&lt;input class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.className (&lt;input class&gt;): setAttribute() to NaN followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): setAttribute() to NaN followed by IDL get 
+PASS input.className (&lt;input class&gt;): setAttribute() to Infinity followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): setAttribute() to Infinity followed by IDL get 
+PASS input.className (&lt;input class&gt;): setAttribute() to -Infinity followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): setAttribute() to -Infinity followed by IDL get 
+PASS input.className (&lt;input class&gt;): setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.className (&lt;input class&gt;): setAttribute() to null followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): setAttribute() to null followed by IDL get 
+PASS input.className (&lt;input class&gt;): setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.className (&lt;input class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.className (&lt;input class&gt;): IDL set to &quot;&quot; should not throw 
+PASS input.className (&lt;input class&gt;): IDL set to &quot;&quot; followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): IDL set to &quot;&quot; followed by IDL get 
+PASS input.className (&lt;input class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS input.className (&lt;input class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.className (&lt;input class&gt;): IDL set to undefined should not throw 
+PASS input.className (&lt;input class&gt;): IDL set to undefined followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): IDL set to undefined followed by IDL get 
+PASS input.className (&lt;input class&gt;): IDL set to 7 should not throw 
+PASS input.className (&lt;input class&gt;): IDL set to 7 followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): IDL set to 7 followed by IDL get 
+PASS input.className (&lt;input class&gt;): IDL set to 1.5 should not throw 
+PASS input.className (&lt;input class&gt;): IDL set to 1.5 followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): IDL set to 1.5 followed by IDL get 
+PASS input.className (&lt;input class&gt;): IDL set to true should not throw 
+PASS input.className (&lt;input class&gt;): IDL set to true followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): IDL set to true followed by IDL get 
+PASS input.className (&lt;input class&gt;): IDL set to false should not throw 
+PASS input.className (&lt;input class&gt;): IDL set to false followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): IDL set to false followed by IDL get 
+PASS input.className (&lt;input class&gt;): IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.className (&lt;input class&gt;): IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.className (&lt;input class&gt;): IDL set to NaN should not throw 
+PASS input.className (&lt;input class&gt;): IDL set to NaN followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): IDL set to NaN followed by IDL get 
+PASS input.className (&lt;input class&gt;): IDL set to Infinity should not throw 
+PASS input.className (&lt;input class&gt;): IDL set to Infinity followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): IDL set to Infinity followed by IDL get 
+PASS input.className (&lt;input class&gt;): IDL set to -Infinity should not throw 
+PASS input.className (&lt;input class&gt;): IDL set to -Infinity followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): IDL set to -Infinity followed by IDL get 
+PASS input.className (&lt;input class&gt;): IDL set to &quot;\0&quot; should not throw 
+PASS input.className (&lt;input class&gt;): IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.className (&lt;input class&gt;): IDL set to null should not throw 
+PASS input.className (&lt;input class&gt;): IDL set to null followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): IDL set to null followed by IDL get 
+PASS input.className (&lt;input class&gt;): IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.className (&lt;input class&gt;): IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.className (&lt;input class&gt;): IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.className (&lt;input class&gt;): IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.className (&lt;input class&gt;): IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.hidden: typeof IDL attribute 
+PASS input.hidden: IDL get with DOM attribute unset 
+PASS input.hidden: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.hidden: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.hidden: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS input.hidden: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS input.hidden: setAttribute() to undefined followed by getAttribute() 
+PASS input.hidden: setAttribute() to undefined followed by IDL get 
+PASS input.hidden: setAttribute() to null followed by getAttribute() 
+PASS input.hidden: setAttribute() to null followed by IDL get 
+PASS input.hidden: setAttribute() to 7 followed by getAttribute() 
+PASS input.hidden: setAttribute() to 7 followed by IDL get 
+PASS input.hidden: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.hidden: setAttribute() to 1.5 followed by IDL get 
+PASS input.hidden: setAttribute() to true followed by getAttribute() 
+PASS input.hidden: setAttribute() to true followed by IDL get 
+PASS input.hidden: setAttribute() to false followed by getAttribute() 
+PASS input.hidden: setAttribute() to false followed by IDL get 
+PASS input.hidden: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.hidden: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.hidden: setAttribute() to NaN followed by getAttribute() 
+PASS input.hidden: setAttribute() to NaN followed by IDL get 
+PASS input.hidden: setAttribute() to Infinity followed by getAttribute() 
+PASS input.hidden: setAttribute() to Infinity followed by IDL get 
+PASS input.hidden: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.hidden: setAttribute() to -Infinity followed by IDL get 
+PASS input.hidden: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.hidden: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.hidden: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.hidden: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.hidden: setAttribute() to &quot;hidden&quot; followed by getAttribute() 
+PASS input.hidden: setAttribute() to &quot;hidden&quot; followed by IDL get 
+PASS input.hidden: IDL set to &quot;&quot; should not throw 
+PASS input.hidden: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS input.hidden: IDL set to &quot;&quot; followed by IDL get 
+PASS input.hidden: IDL set to &quot; foo &quot; should not throw 
+PASS input.hidden: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS input.hidden: IDL set to &quot; foo &quot; followed by IDL get 
+PASS input.hidden: IDL set to undefined should not throw 
+PASS input.hidden: IDL set to undefined followed by hasAttribute() 
+PASS input.hidden: IDL set to undefined followed by IDL get 
+PASS input.hidden: IDL set to null should not throw 
+PASS input.hidden: IDL set to null followed by hasAttribute() 
+PASS input.hidden: IDL set to null followed by IDL get 
+PASS input.hidden: IDL set to 7 should not throw 
+PASS input.hidden: IDL set to 7 followed by hasAttribute() 
+PASS input.hidden: IDL set to 7 followed by IDL get 
+PASS input.hidden: IDL set to 1.5 should not throw 
+PASS input.hidden: IDL set to 1.5 followed by hasAttribute() 
+PASS input.hidden: IDL set to 1.5 followed by IDL get 
+PASS input.hidden: IDL set to true should not throw 
+PASS input.hidden: IDL set to true followed by hasAttribute() 
+PASS input.hidden: IDL set to true followed by IDL get 
+PASS input.hidden: IDL set to false should not throw 
+PASS input.hidden: IDL set to false followed by hasAttribute() 
+PASS input.hidden: IDL set to false followed by IDL get 
+PASS input.hidden: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.hidden: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS input.hidden: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.hidden: IDL set to NaN should not throw 
+PASS input.hidden: IDL set to NaN followed by hasAttribute() 
+PASS input.hidden: IDL set to NaN followed by IDL get 
+PASS input.hidden: IDL set to Infinity should not throw 
+PASS input.hidden: IDL set to Infinity followed by hasAttribute() 
+PASS input.hidden: IDL set to Infinity followed by IDL get 
+PASS input.hidden: IDL set to -Infinity should not throw 
+PASS input.hidden: IDL set to -Infinity followed by hasAttribute() 
+PASS input.hidden: IDL set to -Infinity followed by IDL get 
+PASS input.hidden: IDL set to &quot;\0&quot; should not throw 
+PASS input.hidden: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS input.hidden: IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.hidden: IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.hidden: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS input.hidden: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.hidden: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.hidden: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS input.hidden: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.accessKey: typeof IDL attribute 
+PASS input.accessKey: IDL get with DOM attribute unset 
+PASS input.accessKey: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.accessKey: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.accessKey: setAttribute() to undefined followed by getAttribute() 
+PASS input.accessKey: setAttribute() to undefined followed by IDL get 
+PASS input.accessKey: setAttribute() to 7 followed by getAttribute() 
+PASS input.accessKey: setAttribute() to 7 followed by IDL get 
+PASS input.accessKey: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.accessKey: setAttribute() to 1.5 followed by IDL get 
+PASS input.accessKey: setAttribute() to true followed by getAttribute() 
+PASS input.accessKey: setAttribute() to true followed by IDL get 
+PASS input.accessKey: setAttribute() to false followed by getAttribute() 
+PASS input.accessKey: setAttribute() to false followed by IDL get 
+PASS input.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.accessKey: setAttribute() to NaN followed by getAttribute() 
+PASS input.accessKey: setAttribute() to NaN followed by IDL get 
+PASS input.accessKey: setAttribute() to Infinity followed by getAttribute() 
+PASS input.accessKey: setAttribute() to Infinity followed by IDL get 
+PASS input.accessKey: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.accessKey: setAttribute() to -Infinity followed by IDL get 
+PASS input.accessKey: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.accessKey: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.accessKey: setAttribute() to null followed by getAttribute() 
+PASS input.accessKey: setAttribute() to null followed by IDL get 
+PASS input.accessKey: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.accessKey: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.accessKey: IDL set to &quot;&quot; should not throw 
+PASS input.accessKey: IDL set to &quot;&quot; followed by getAttribute() 
+PASS input.accessKey: IDL set to &quot;&quot; followed by IDL get 
+PASS input.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS input.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.accessKey: IDL set to undefined should not throw 
+PASS input.accessKey: IDL set to undefined followed by getAttribute() 
+PASS input.accessKey: IDL set to undefined followed by IDL get 
+PASS input.accessKey: IDL set to 7 should not throw 
+PASS input.accessKey: IDL set to 7 followed by getAttribute() 
+PASS input.accessKey: IDL set to 7 followed by IDL get 
+PASS input.accessKey: IDL set to 1.5 should not throw 
+PASS input.accessKey: IDL set to 1.5 followed by getAttribute() 
+PASS input.accessKey: IDL set to 1.5 followed by IDL get 
+PASS input.accessKey: IDL set to true should not throw 
+PASS input.accessKey: IDL set to true followed by getAttribute() 
+PASS input.accessKey: IDL set to true followed by IDL get 
+PASS input.accessKey: IDL set to false should not throw 
+PASS input.accessKey: IDL set to false followed by getAttribute() 
+PASS input.accessKey: IDL set to false followed by IDL get 
+PASS input.accessKey: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.accessKey: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.accessKey: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.accessKey: IDL set to NaN should not throw 
+PASS input.accessKey: IDL set to NaN followed by getAttribute() 
+PASS input.accessKey: IDL set to NaN followed by IDL get 
+PASS input.accessKey: IDL set to Infinity should not throw 
+PASS input.accessKey: IDL set to Infinity followed by getAttribute() 
+PASS input.accessKey: IDL set to Infinity followed by IDL get 
+PASS input.accessKey: IDL set to -Infinity should not throw 
+PASS input.accessKey: IDL set to -Infinity followed by getAttribute() 
+PASS input.accessKey: IDL set to -Infinity followed by IDL get 
+PASS input.accessKey: IDL set to &quot;\0&quot; should not throw 
+PASS input.accessKey: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS input.accessKey: IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.accessKey: IDL set to null should not throw 
+PASS input.accessKey: IDL set to null followed by getAttribute() 
+PASS input.accessKey: IDL set to null followed by IDL get 
+PASS input.accessKey: IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.accessKey: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.accessKey: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.accessKey: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.accessKey: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.accessKey: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.tabIndex: typeof IDL attribute 
+PASS input.tabIndex: setAttribute() to -36 followed by getAttribute() 
+PASS input.tabIndex: setAttribute() to -36 followed by IDL get 
+PASS input.tabIndex: setAttribute() to -1 followed by getAttribute() 
+PASS input.tabIndex: setAttribute() to -1 followed by IDL get 
+PASS input.tabIndex: setAttribute() to 0 followed by getAttribute() 
+PASS input.tabIndex: setAttribute() to 0 followed by IDL get 
+PASS input.tabIndex: setAttribute() to 1 followed by getAttribute() 
+PASS input.tabIndex: setAttribute() to 1 followed by IDL get 
+PASS input.tabIndex: setAttribute() to 2147483647 followed by getAttribute() 
+PASS input.tabIndex: setAttribute() to 2147483647 followed by IDL get 
+PASS input.tabIndex: setAttribute() to -2147483648 followed by getAttribute() 
+PASS input.tabIndex: setAttribute() to -2147483648 followed by IDL get 
+PASS input.tabIndex: setAttribute() to &quot;-1&quot; followed by getAttribute() 
+PASS input.tabIndex: setAttribute() to &quot;-1&quot; followed by IDL get 
+PASS input.tabIndex: setAttribute() to &quot;-0&quot; followed by getAttribute() 
+PASS input.tabIndex: setAttribute() to &quot;-0&quot; followed by IDL get 
+PASS input.tabIndex: setAttribute() to &quot;0&quot; followed by getAttribute() 
+PASS input.tabIndex: setAttribute() to &quot;0&quot; followed by IDL get 
+PASS input.tabIndex: setAttribute() to &quot;1&quot; followed by getAttribute() 
+PASS input.tabIndex: setAttribute() to &quot;1&quot; followed by IDL get 
+PASS input.tabIndex: setAttribute() to &quot;\t7&quot; followed by getAttribute() 
+PASS input.tabIndex: setAttribute() to &quot;\t7&quot; followed by IDL get 
+PASS input.tabIndex: setAttribute() to &quot;\f7&quot; followed by getAttribute() 
+PASS input.tabIndex: setAttribute() to &quot;\f7&quot; followed by IDL get 
+PASS input.tabIndex: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.tabIndex: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.tabIndex: setAttribute() to &quot;\n7&quot; followed by getAttribute() 
+PASS input.tabIndex: setAttribute() to &quot;\n7&quot; followed by IDL get 
+PASS input.tabIndex: setAttribute() to &quot;\r7&quot; followed by getAttribute() 
+PASS input.tabIndex: setAttribute() to &quot;\r7&quot; followed by IDL get 
+PASS input.tabIndex: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.tabIndex: setAttribute() to 1.5 followed by IDL get 
+PASS input.tabIndex: setAttribute() to object &quot;2&quot; followed by getAttribute() 
+PASS input.tabIndex: setAttribute() to object &quot;2&quot; followed by IDL get 
+PASS input.tabIndex: IDL set to -36 should not throw 
+PASS input.tabIndex: IDL set to -36 followed by getAttribute() 
+PASS input.tabIndex: IDL set to -36 followed by IDL get 
+PASS input.tabIndex: IDL set to -1 should not throw 
+PASS input.tabIndex: IDL set to -1 followed by getAttribute() 
+PASS input.tabIndex: IDL set to -1 followed by IDL get 
+PASS input.tabIndex: IDL set to 0 should not throw 
+PASS input.tabIndex: IDL set to 0 followed by getAttribute() 
+PASS input.tabIndex: IDL set to 0 followed by IDL get 
+PASS input.tabIndex: IDL set to 1 should not throw 
+PASS input.tabIndex: IDL set to 1 followed by getAttribute() 
+PASS input.tabIndex: IDL set to 1 followed by IDL get 
+PASS input.tabIndex: IDL set to 2147483647 should not throw 
+PASS input.tabIndex: IDL set to 2147483647 followed by getAttribute() 
+PASS input.tabIndex: IDL set to 2147483647 followed by IDL get 
+PASS input.tabIndex: IDL set to -2147483648 should not throw 
+PASS input.tabIndex: IDL set to -2147483648 followed by getAttribute() 
+PASS input.tabIndex: IDL set to -2147483648 followed by IDL get 
+PASS input.accept: typeof IDL attribute 
+PASS input.accept: IDL get with DOM attribute unset 
+PASS input.accept: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.accept: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.accept: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.accept: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.accept: setAttribute() to undefined followed by getAttribute() 
+PASS input.accept: setAttribute() to undefined followed by IDL get 
+PASS input.accept: setAttribute() to 7 followed by getAttribute() 
+PASS input.accept: setAttribute() to 7 followed by IDL get 
+PASS input.accept: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.accept: setAttribute() to 1.5 followed by IDL get 
+PASS input.accept: setAttribute() to true followed by getAttribute() 
+PASS input.accept: setAttribute() to true followed by IDL get 
+PASS input.accept: setAttribute() to false followed by getAttribute() 
+PASS input.accept: setAttribute() to false followed by IDL get 
+PASS input.accept: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.accept: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.accept: setAttribute() to NaN followed by getAttribute() 
+PASS input.accept: setAttribute() to NaN followed by IDL get 
+PASS input.accept: setAttribute() to Infinity followed by getAttribute() 
+PASS input.accept: setAttribute() to Infinity followed by IDL get 
+PASS input.accept: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.accept: setAttribute() to -Infinity followed by IDL get 
+PASS input.accept: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.accept: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.accept: setAttribute() to null followed by getAttribute() 
+PASS input.accept: setAttribute() to null followed by IDL get 
+PASS input.accept: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.accept: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.accept: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.accept: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.accept: IDL set to &quot;&quot; should not throw 
+PASS input.accept: IDL set to &quot;&quot; followed by getAttribute() 
+PASS input.accept: IDL set to &quot;&quot; followed by IDL get 
+PASS input.accept: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS input.accept: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.accept: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.accept: IDL set to undefined should not throw 
+PASS input.accept: IDL set to undefined followed by getAttribute() 
+PASS input.accept: IDL set to undefined followed by IDL get 
+PASS input.accept: IDL set to 7 should not throw 
+PASS input.accept: IDL set to 7 followed by getAttribute() 
+PASS input.accept: IDL set to 7 followed by IDL get 
+PASS input.accept: IDL set to 1.5 should not throw 
+PASS input.accept: IDL set to 1.5 followed by getAttribute() 
+PASS input.accept: IDL set to 1.5 followed by IDL get 
+PASS input.accept: IDL set to true should not throw 
+PASS input.accept: IDL set to true followed by getAttribute() 
+PASS input.accept: IDL set to true followed by IDL get 
+PASS input.accept: IDL set to false should not throw 
+PASS input.accept: IDL set to false followed by getAttribute() 
+PASS input.accept: IDL set to false followed by IDL get 
+PASS input.accept: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.accept: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.accept: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.accept: IDL set to NaN should not throw 
+PASS input.accept: IDL set to NaN followed by getAttribute() 
+PASS input.accept: IDL set to NaN followed by IDL get 
+PASS input.accept: IDL set to Infinity should not throw 
+PASS input.accept: IDL set to Infinity followed by getAttribute() 
+PASS input.accept: IDL set to Infinity followed by IDL get 
+PASS input.accept: IDL set to -Infinity should not throw 
+PASS input.accept: IDL set to -Infinity followed by getAttribute() 
+PASS input.accept: IDL set to -Infinity followed by IDL get 
+PASS input.accept: IDL set to &quot;\0&quot; should not throw 
+PASS input.accept: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS input.accept: IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.accept: IDL set to null should not throw 
+PASS input.accept: IDL set to null followed by getAttribute() 
+PASS input.accept: IDL set to null followed by IDL get 
+PASS input.accept: IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.accept: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.accept: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.accept: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.accept: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.accept: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.alt: typeof IDL attribute 
+PASS input.alt: IDL get with DOM attribute unset 
+PASS input.alt: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.alt: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.alt: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.alt: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.alt: setAttribute() to undefined followed by getAttribute() 
+PASS input.alt: setAttribute() to undefined followed by IDL get 
+PASS input.alt: setAttribute() to 7 followed by getAttribute() 
+PASS input.alt: setAttribute() to 7 followed by IDL get 
+PASS input.alt: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.alt: setAttribute() to 1.5 followed by IDL get 
+PASS input.alt: setAttribute() to true followed by getAttribute() 
+PASS input.alt: setAttribute() to true followed by IDL get 
+PASS input.alt: setAttribute() to false followed by getAttribute() 
+PASS input.alt: setAttribute() to false followed by IDL get 
+PASS input.alt: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.alt: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.alt: setAttribute() to NaN followed by getAttribute() 
+PASS input.alt: setAttribute() to NaN followed by IDL get 
+PASS input.alt: setAttribute() to Infinity followed by getAttribute() 
+PASS input.alt: setAttribute() to Infinity followed by IDL get 
+PASS input.alt: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.alt: setAttribute() to -Infinity followed by IDL get 
+PASS input.alt: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.alt: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.alt: setAttribute() to null followed by getAttribute() 
+PASS input.alt: setAttribute() to null followed by IDL get 
+PASS input.alt: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.alt: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.alt: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.alt: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.alt: IDL set to &quot;&quot; should not throw 
+PASS input.alt: IDL set to &quot;&quot; followed by getAttribute() 
+PASS input.alt: IDL set to &quot;&quot; followed by IDL get 
+PASS input.alt: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS input.alt: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.alt: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.alt: IDL set to undefined should not throw 
+PASS input.alt: IDL set to undefined followed by getAttribute() 
+PASS input.alt: IDL set to undefined followed by IDL get 
+PASS input.alt: IDL set to 7 should not throw 
+PASS input.alt: IDL set to 7 followed by getAttribute() 
+PASS input.alt: IDL set to 7 followed by IDL get 
+PASS input.alt: IDL set to 1.5 should not throw 
+PASS input.alt: IDL set to 1.5 followed by getAttribute() 
+PASS input.alt: IDL set to 1.5 followed by IDL get 
+PASS input.alt: IDL set to true should not throw 
+PASS input.alt: IDL set to true followed by getAttribute() 
+PASS input.alt: IDL set to true followed by IDL get 
+PASS input.alt: IDL set to false should not throw 
+PASS input.alt: IDL set to false followed by getAttribute() 
+PASS input.alt: IDL set to false followed by IDL get 
+PASS input.alt: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.alt: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.alt: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.alt: IDL set to NaN should not throw 
+PASS input.alt: IDL set to NaN followed by getAttribute() 
+PASS input.alt: IDL set to NaN followed by IDL get 
+PASS input.alt: IDL set to Infinity should not throw 
+PASS input.alt: IDL set to Infinity followed by getAttribute() 
+PASS input.alt: IDL set to Infinity followed by IDL get 
+PASS input.alt: IDL set to -Infinity should not throw 
+PASS input.alt: IDL set to -Infinity followed by getAttribute() 
+PASS input.alt: IDL set to -Infinity followed by IDL get 
+PASS input.alt: IDL set to &quot;\0&quot; should not throw 
+PASS input.alt: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS input.alt: IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.alt: IDL set to null should not throw 
+PASS input.alt: IDL set to null followed by getAttribute() 
+PASS input.alt: IDL set to null followed by IDL get 
+PASS input.alt: IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.alt: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.alt: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.alt: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.alt: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.alt: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.autofocus: typeof IDL attribute 
+PASS input.autofocus: IDL get with DOM attribute unset 
+PASS input.autofocus: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.autofocus: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.autofocus: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS input.autofocus: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS input.autofocus: setAttribute() to undefined followed by getAttribute() 
+PASS input.autofocus: setAttribute() to undefined followed by IDL get 
+PASS input.autofocus: setAttribute() to null followed by getAttribute() 
+PASS input.autofocus: setAttribute() to null followed by IDL get 
+PASS input.autofocus: setAttribute() to 7 followed by getAttribute() 
+PASS input.autofocus: setAttribute() to 7 followed by IDL get 
+PASS input.autofocus: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.autofocus: setAttribute() to 1.5 followed by IDL get 
+PASS input.autofocus: setAttribute() to true followed by getAttribute() 
+PASS input.autofocus: setAttribute() to true followed by IDL get 
+PASS input.autofocus: setAttribute() to false followed by getAttribute() 
+PASS input.autofocus: setAttribute() to false followed by IDL get 
+PASS input.autofocus: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.autofocus: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.autofocus: setAttribute() to NaN followed by getAttribute() 
+PASS input.autofocus: setAttribute() to NaN followed by IDL get 
+PASS input.autofocus: setAttribute() to Infinity followed by getAttribute() 
+PASS input.autofocus: setAttribute() to Infinity followed by IDL get 
+PASS input.autofocus: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.autofocus: setAttribute() to -Infinity followed by IDL get 
+PASS input.autofocus: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.autofocus: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.autofocus: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.autofocus: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.autofocus: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.autofocus: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.autofocus: setAttribute() to &quot;autofocus&quot; followed by getAttribute() 
+PASS input.autofocus: setAttribute() to &quot;autofocus&quot; followed by IDL get 
+PASS input.autofocus: IDL set to &quot;&quot; should not throw 
+PASS input.autofocus: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS input.autofocus: IDL set to &quot;&quot; followed by IDL get 
+PASS input.autofocus: IDL set to &quot; foo &quot; should not throw 
+PASS input.autofocus: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS input.autofocus: IDL set to &quot; foo &quot; followed by IDL get 
+PASS input.autofocus: IDL set to undefined should not throw 
+PASS input.autofocus: IDL set to undefined followed by hasAttribute() 
+PASS input.autofocus: IDL set to undefined followed by IDL get 
+PASS input.autofocus: IDL set to null should not throw 
+PASS input.autofocus: IDL set to null followed by hasAttribute() 
+PASS input.autofocus: IDL set to null followed by IDL get 
+PASS input.autofocus: IDL set to 7 should not throw 
+PASS input.autofocus: IDL set to 7 followed by hasAttribute() 
+PASS input.autofocus: IDL set to 7 followed by IDL get 
+PASS input.autofocus: IDL set to 1.5 should not throw 
+PASS input.autofocus: IDL set to 1.5 followed by hasAttribute() 
+PASS input.autofocus: IDL set to 1.5 followed by IDL get 
+PASS input.autofocus: IDL set to true should not throw 
+PASS input.autofocus: IDL set to true followed by hasAttribute() 
+PASS input.autofocus: IDL set to true followed by IDL get 
+PASS input.autofocus: IDL set to false should not throw 
+PASS input.autofocus: IDL set to false followed by hasAttribute() 
+PASS input.autofocus: IDL set to false followed by IDL get 
+PASS input.autofocus: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.autofocus: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS input.autofocus: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.autofocus: IDL set to NaN should not throw 
+PASS input.autofocus: IDL set to NaN followed by hasAttribute() 
+PASS input.autofocus: IDL set to NaN followed by IDL get 
+PASS input.autofocus: IDL set to Infinity should not throw 
+PASS input.autofocus: IDL set to Infinity followed by hasAttribute() 
+PASS input.autofocus: IDL set to Infinity followed by IDL get 
+PASS input.autofocus: IDL set to -Infinity should not throw 
+PASS input.autofocus: IDL set to -Infinity followed by hasAttribute() 
+PASS input.autofocus: IDL set to -Infinity followed by IDL get 
+PASS input.autofocus: IDL set to &quot;\0&quot; should not throw 
+PASS input.autofocus: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS input.autofocus: IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.autofocus: IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.autofocus: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS input.autofocus: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.autofocus: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.autofocus: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS input.autofocus: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): typeof IDL attribute 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL get with DOM attribute unset 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to undefined followed by getAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to undefined followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to null followed by getAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to null followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to 7 followed by getAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to 7 followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to 1.5 followed by getAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to 1.5 followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to true followed by getAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to true followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to false followed by getAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to false followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to NaN followed by getAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to NaN followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to Infinity followed by getAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to Infinity followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to -Infinity followed by getAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to -Infinity followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to &quot;checked&quot; followed by getAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): setAttribute() to &quot;checked&quot; followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to &quot;&quot; should not throw 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to &quot;&quot; followed by hasAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to &quot;&quot; followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to &quot; foo &quot; should not throw 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to &quot; foo &quot; followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to undefined should not throw 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to undefined followed by hasAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to undefined followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to null should not throw 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to null followed by hasAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to null followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to 7 should not throw 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to 7 followed by hasAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to 7 followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to 1.5 should not throw 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to 1.5 followed by hasAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to 1.5 followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to true should not throw 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to true followed by hasAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to true followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to false should not throw 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to false followed by hasAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to false followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to NaN should not throw 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to NaN followed by hasAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to NaN followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to Infinity should not throw 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to Infinity followed by hasAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to Infinity followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to -Infinity should not throw 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to -Infinity followed by hasAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to -Infinity followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to &quot;\0&quot; should not throw 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS input.defaultChecked (&lt;input checked&gt;): IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.dirName: typeof IDL attribute 
+PASS input.dirName: IDL get with DOM attribute unset 
+PASS input.dirName: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.dirName: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.dirName: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.dirName: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.dirName: setAttribute() to undefined followed by getAttribute() 
+PASS input.dirName: setAttribute() to undefined followed by IDL get 
+PASS input.dirName: setAttribute() to 7 followed by getAttribute() 
+PASS input.dirName: setAttribute() to 7 followed by IDL get 
+PASS input.dirName: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.dirName: setAttribute() to 1.5 followed by IDL get 
+PASS input.dirName: setAttribute() to true followed by getAttribute() 
+PASS input.dirName: setAttribute() to true followed by IDL get 
+PASS input.dirName: setAttribute() to false followed by getAttribute() 
+PASS input.dirName: setAttribute() to false followed by IDL get 
+PASS input.dirName: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.dirName: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.dirName: setAttribute() to NaN followed by getAttribute() 
+PASS input.dirName: setAttribute() to NaN followed by IDL get 
+PASS input.dirName: setAttribute() to Infinity followed by getAttribute() 
+PASS input.dirName: setAttribute() to Infinity followed by IDL get 
+PASS input.dirName: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.dirName: setAttribute() to -Infinity followed by IDL get 
+PASS input.dirName: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.dirName: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.dirName: setAttribute() to null followed by getAttribute() 
+PASS input.dirName: setAttribute() to null followed by IDL get 
+PASS input.dirName: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.dirName: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.dirName: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.dirName: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.dirName: IDL set to &quot;&quot; should not throw 
+PASS input.dirName: IDL set to &quot;&quot; followed by getAttribute() 
+PASS input.dirName: IDL set to &quot;&quot; followed by IDL get 
+PASS input.dirName: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS input.dirName: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.dirName: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.dirName: IDL set to undefined should not throw 
+PASS input.dirName: IDL set to undefined followed by getAttribute() 
+PASS input.dirName: IDL set to undefined followed by IDL get 
+PASS input.dirName: IDL set to 7 should not throw 
+PASS input.dirName: IDL set to 7 followed by getAttribute() 
+PASS input.dirName: IDL set to 7 followed by IDL get 
+PASS input.dirName: IDL set to 1.5 should not throw 
+PASS input.dirName: IDL set to 1.5 followed by getAttribute() 
+PASS input.dirName: IDL set to 1.5 followed by IDL get 
+PASS input.dirName: IDL set to true should not throw 
+PASS input.dirName: IDL set to true followed by getAttribute() 
+PASS input.dirName: IDL set to true followed by IDL get 
+PASS input.dirName: IDL set to false should not throw 
+PASS input.dirName: IDL set to false followed by getAttribute() 
+PASS input.dirName: IDL set to false followed by IDL get 
+PASS input.dirName: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.dirName: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.dirName: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.dirName: IDL set to NaN should not throw 
+PASS input.dirName: IDL set to NaN followed by getAttribute() 
+PASS input.dirName: IDL set to NaN followed by IDL get 
+PASS input.dirName: IDL set to Infinity should not throw 
+PASS input.dirName: IDL set to Infinity followed by getAttribute() 
+PASS input.dirName: IDL set to Infinity followed by IDL get 
+PASS input.dirName: IDL set to -Infinity should not throw 
+PASS input.dirName: IDL set to -Infinity followed by getAttribute() 
+PASS input.dirName: IDL set to -Infinity followed by IDL get 
+PASS input.dirName: IDL set to &quot;\0&quot; should not throw 
+PASS input.dirName: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS input.dirName: IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.dirName: IDL set to null should not throw 
+PASS input.dirName: IDL set to null followed by getAttribute() 
+PASS input.dirName: IDL set to null followed by IDL get 
+PASS input.dirName: IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.dirName: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.dirName: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.dirName: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.dirName: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.dirName: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.disabled: typeof IDL attribute 
+PASS input.disabled: IDL get with DOM attribute unset 
+PASS input.disabled: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.disabled: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.disabled: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS input.disabled: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS input.disabled: setAttribute() to undefined followed by getAttribute() 
+PASS input.disabled: setAttribute() to undefined followed by IDL get 
+PASS input.disabled: setAttribute() to null followed by getAttribute() 
+PASS input.disabled: setAttribute() to null followed by IDL get 
+PASS input.disabled: setAttribute() to 7 followed by getAttribute() 
+PASS input.disabled: setAttribute() to 7 followed by IDL get 
+PASS input.disabled: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.disabled: setAttribute() to 1.5 followed by IDL get 
+PASS input.disabled: setAttribute() to true followed by getAttribute() 
+PASS input.disabled: setAttribute() to true followed by IDL get 
+PASS input.disabled: setAttribute() to false followed by getAttribute() 
+PASS input.disabled: setAttribute() to false followed by IDL get 
+PASS input.disabled: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.disabled: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.disabled: setAttribute() to NaN followed by getAttribute() 
+PASS input.disabled: setAttribute() to NaN followed by IDL get 
+PASS input.disabled: setAttribute() to Infinity followed by getAttribute() 
+PASS input.disabled: setAttribute() to Infinity followed by IDL get 
+PASS input.disabled: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.disabled: setAttribute() to -Infinity followed by IDL get 
+PASS input.disabled: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.disabled: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.disabled: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.disabled: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.disabled: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.disabled: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.disabled: setAttribute() to &quot;disabled&quot; followed by getAttribute() 
+PASS input.disabled: setAttribute() to &quot;disabled&quot; followed by IDL get 
+PASS input.disabled: IDL set to &quot;&quot; should not throw 
+PASS input.disabled: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS input.disabled: IDL set to &quot;&quot; followed by IDL get 
+PASS input.disabled: IDL set to &quot; foo &quot; should not throw 
+PASS input.disabled: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS input.disabled: IDL set to &quot; foo &quot; followed by IDL get 
+PASS input.disabled: IDL set to undefined should not throw 
+PASS input.disabled: IDL set to undefined followed by hasAttribute() 
+PASS input.disabled: IDL set to undefined followed by IDL get 
+PASS input.disabled: IDL set to null should not throw 
+PASS input.disabled: IDL set to null followed by hasAttribute() 
+PASS input.disabled: IDL set to null followed by IDL get 
+PASS input.disabled: IDL set to 7 should not throw 
+PASS input.disabled: IDL set to 7 followed by hasAttribute() 
+PASS input.disabled: IDL set to 7 followed by IDL get 
+PASS input.disabled: IDL set to 1.5 should not throw 
+PASS input.disabled: IDL set to 1.5 followed by hasAttribute() 
+PASS input.disabled: IDL set to 1.5 followed by IDL get 
+PASS input.disabled: IDL set to true should not throw 
+PASS input.disabled: IDL set to true followed by hasAttribute() 
+PASS input.disabled: IDL set to true followed by IDL get 
+PASS input.disabled: IDL set to false should not throw 
+PASS input.disabled: IDL set to false followed by hasAttribute() 
+PASS input.disabled: IDL set to false followed by IDL get 
+PASS input.disabled: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.disabled: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS input.disabled: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.disabled: IDL set to NaN should not throw 
+PASS input.disabled: IDL set to NaN followed by hasAttribute() 
+PASS input.disabled: IDL set to NaN followed by IDL get 
+PASS input.disabled: IDL set to Infinity should not throw 
+PASS input.disabled: IDL set to Infinity followed by hasAttribute() 
+PASS input.disabled: IDL set to Infinity followed by IDL get 
+PASS input.disabled: IDL set to -Infinity should not throw 
+PASS input.disabled: IDL set to -Infinity followed by hasAttribute() 
+PASS input.disabled: IDL set to -Infinity followed by IDL get 
+PASS input.disabled: IDL set to &quot;\0&quot; should not throw 
+PASS input.disabled: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS input.disabled: IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.disabled: IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.disabled: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS input.disabled: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.disabled: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.disabled: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS input.disabled: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.formEnctype: typeof IDL attribute 
+PASS input.formEnctype: IDL get with DOM attribute unset 
+PASS input.formEnctype: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.formEnctype: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.formEnctype: setAttribute() to undefined followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to undefined followed by IDL get 
+PASS input.formEnctype: setAttribute() to 7 followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to 7 followed by IDL get 
+PASS input.formEnctype: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to 1.5 followed by IDL get 
+PASS input.formEnctype: setAttribute() to true followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to true followed by IDL get 
+PASS input.formEnctype: setAttribute() to false followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to false followed by IDL get 
+PASS input.formEnctype: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.formEnctype: setAttribute() to NaN followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to NaN followed by IDL get 
+PASS input.formEnctype: setAttribute() to Infinity followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to Infinity followed by IDL get 
+PASS input.formEnctype: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to -Infinity followed by IDL get 
+PASS input.formEnctype: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.formEnctype: setAttribute() to null followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to null followed by IDL get 
+PASS input.formEnctype: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.formEnctype: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.formEnctype: setAttribute() to &quot;application/x-www-form-urlencoded&quot; followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to &quot;application/x-www-form-urlencoded&quot; followed by IDL get 
+PASS input.formEnctype: setAttribute() to &quot;xapplication/x-www-form-urlencoded&quot; followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to &quot;xapplication/x-www-form-urlencoded&quot; followed by IDL get 
+PASS input.formEnctype: setAttribute() to &quot;application/x-www-form-urlencoded\0&quot; followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to &quot;application/x-www-form-urlencoded\0&quot; followed by IDL get 
+PASS input.formEnctype: setAttribute() to &quot;pplication/x-www-form-urlencoded&quot; followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to &quot;pplication/x-www-form-urlencoded&quot; followed by IDL get 
+PASS input.formEnctype: setAttribute() to &quot;APPLICATION/X-WWW-FORM-URLENCODED&quot; followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to &quot;APPLICATION/X-WWW-FORM-URLENCODED&quot; followed by IDL get 
+PASS input.formEnctype: setAttribute() to &quot;multipart/form-data&quot; followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to &quot;multipart/form-data&quot; followed by IDL get 
+PASS input.formEnctype: setAttribute() to &quot;xmultipart/form-data&quot; followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to &quot;xmultipart/form-data&quot; followed by IDL get 
+PASS input.formEnctype: setAttribute() to &quot;multipart/form-data\0&quot; followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to &quot;multipart/form-data\0&quot; followed by IDL get 
+PASS input.formEnctype: setAttribute() to &quot;ultipart/form-data&quot; followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to &quot;ultipart/form-data&quot; followed by IDL get 
+PASS input.formEnctype: setAttribute() to &quot;MULTIPART/FORM-DATA&quot; followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to &quot;MULTIPART/FORM-DATA&quot; followed by IDL get 
+PASS input.formEnctype: setAttribute() to &quot;text/plain&quot; followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to &quot;text/plain&quot; followed by IDL get 
+PASS input.formEnctype: setAttribute() to &quot;xtext/plain&quot; followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to &quot;xtext/plain&quot; followed by IDL get 
+PASS input.formEnctype: setAttribute() to &quot;text/plain\0&quot; followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to &quot;text/plain\0&quot; followed by IDL get 
+PASS input.formEnctype: setAttribute() to &quot;ext/plain&quot; followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to &quot;ext/plain&quot; followed by IDL get 
+PASS input.formEnctype: setAttribute() to &quot;TEXT/PLAIN&quot; followed by getAttribute() 
+PASS input.formEnctype: setAttribute() to &quot;TEXT/PLAIN&quot; followed by IDL get 
+PASS input.formEnctype: IDL set to &quot;&quot; should not throw 
+PASS input.formEnctype: IDL set to &quot;&quot; followed by getAttribute() 
+PASS input.formEnctype: IDL set to &quot;&quot; followed by IDL get 
+PASS input.formEnctype: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS input.formEnctype: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.formEnctype: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.formEnctype: IDL set to undefined should not throw 
+PASS input.formEnctype: IDL set to undefined followed by getAttribute() 
+PASS input.formEnctype: IDL set to undefined followed by IDL get 
+PASS input.formEnctype: IDL set to 7 should not throw 
+PASS input.formEnctype: IDL set to 7 followed by getAttribute() 
+PASS input.formEnctype: IDL set to 7 followed by IDL get 
+PASS input.formEnctype: IDL set to 1.5 should not throw 
+PASS input.formEnctype: IDL set to 1.5 followed by getAttribute() 
+PASS input.formEnctype: IDL set to 1.5 followed by IDL get 
+PASS input.formEnctype: IDL set to true should not throw 
+PASS input.formEnctype: IDL set to true followed by getAttribute() 
+PASS input.formEnctype: IDL set to true followed by IDL get 
+PASS input.formEnctype: IDL set to false should not throw 
+PASS input.formEnctype: IDL set to false followed by getAttribute() 
+PASS input.formEnctype: IDL set to false followed by IDL get 
+PASS input.formEnctype: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.formEnctype: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.formEnctype: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.formEnctype: IDL set to NaN should not throw 
+PASS input.formEnctype: IDL set to NaN followed by getAttribute() 
+PASS input.formEnctype: IDL set to NaN followed by IDL get 
+PASS input.formEnctype: IDL set to Infinity should not throw 
+PASS input.formEnctype: IDL set to Infinity followed by getAttribute() 
+PASS input.formEnctype: IDL set to Infinity followed by IDL get 
+PASS input.formEnctype: IDL set to -Infinity should not throw 
+PASS input.formEnctype: IDL set to -Infinity followed by getAttribute() 
+PASS input.formEnctype: IDL set to -Infinity followed by IDL get 
+PASS input.formEnctype: IDL set to &quot;\0&quot; should not throw 
+PASS input.formEnctype: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS input.formEnctype: IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.formEnctype: IDL set to null should not throw 
+FAIL input.formEnctype: IDL set to null followed by IDL get assert_equals: expected &quot;application/x-www-form-urlencoded&quot; but got &quot;&quot;
+PASS input.formEnctype: IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.formEnctype: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.formEnctype: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.formEnctype: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.formEnctype: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.formEnctype: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.formEnctype: IDL set to &quot;application/x-www-form-urlencoded&quot; should not throw 
+PASS input.formEnctype: IDL set to &quot;application/x-www-form-urlencoded&quot; followed by getAttribute() 
+PASS input.formEnctype: IDL set to &quot;application/x-www-form-urlencoded&quot; followed by IDL get 
+PASS input.formEnctype: IDL set to &quot;xapplication/x-www-form-urlencoded&quot; should not throw 
+PASS input.formEnctype: IDL set to &quot;xapplication/x-www-form-urlencoded&quot; followed by getAttribute() 
+PASS input.formEnctype: IDL set to &quot;xapplication/x-www-form-urlencoded&quot; followed by IDL get 
+PASS input.formEnctype: IDL set to &quot;application/x-www-form-urlencoded\0&quot; should not throw 
+PASS input.formEnctype: IDL set to &quot;application/x-www-form-urlencoded\0&quot; followed by getAttribute() 
+PASS input.formEnctype: IDL set to &quot;application/x-www-form-urlencoded\0&quot; followed by IDL get 
+PASS input.formEnctype: IDL set to &quot;pplication/x-www-form-urlencoded&quot; should not throw 
+PASS input.formEnctype: IDL set to &quot;pplication/x-www-form-urlencoded&quot; followed by getAttribute() 
+PASS input.formEnctype: IDL set to &quot;pplication/x-www-form-urlencoded&quot; followed by IDL get 
+PASS input.formEnctype: IDL set to &quot;APPLICATION/X-WWW-FORM-URLENCODED&quot; should not throw 
+PASS input.formEnctype: IDL set to &quot;APPLICATION/X-WWW-FORM-URLENCODED&quot; followed by getAttribute() 
+PASS input.formEnctype: IDL set to &quot;APPLICATION/X-WWW-FORM-URLENCODED&quot; followed by IDL get 
+PASS input.formEnctype: IDL set to &quot;multipart/form-data&quot; should not throw 
+PASS input.formEnctype: IDL set to &quot;multipart/form-data&quot; followed by getAttribute() 
+PASS input.formEnctype: IDL set to &quot;multipart/form-data&quot; followed by IDL get 
+PASS input.formEnctype: IDL set to &quot;xmultipart/form-data&quot; should not throw 
+PASS input.formEnctype: IDL set to &quot;xmultipart/form-data&quot; followed by getAttribute() 
+PASS input.formEnctype: IDL set to &quot;xmultipart/form-data&quot; followed by IDL get 
+PASS input.formEnctype: IDL set to &quot;multipart/form-data\0&quot; should not throw 
+PASS input.formEnctype: IDL set to &quot;multipart/form-data\0&quot; followed by getAttribute() 
+PASS input.formEnctype: IDL set to &quot;multipart/form-data\0&quot; followed by IDL get 
+PASS input.formEnctype: IDL set to &quot;ultipart/form-data&quot; should not throw 
+PASS input.formEnctype: IDL set to &quot;ultipart/form-data&quot; followed by getAttribute() 
+PASS input.formEnctype: IDL set to &quot;ultipart/form-data&quot; followed by IDL get 
+PASS input.formEnctype: IDL set to &quot;MULTIPART/FORM-DATA&quot; should not throw 
+PASS input.formEnctype: IDL set to &quot;MULTIPART/FORM-DATA&quot; followed by getAttribute() 
+PASS input.formEnctype: IDL set to &quot;MULTIPART/FORM-DATA&quot; followed by IDL get 
+PASS input.formEnctype: IDL set to &quot;text/plain&quot; should not throw 
+PASS input.formEnctype: IDL set to &quot;text/plain&quot; followed by getAttribute() 
+PASS input.formEnctype: IDL set to &quot;text/plain&quot; followed by IDL get 
+PASS input.formEnctype: IDL set to &quot;xtext/plain&quot; should not throw 
+PASS input.formEnctype: IDL set to &quot;xtext/plain&quot; followed by getAttribute() 
+PASS input.formEnctype: IDL set to &quot;xtext/plain&quot; followed by IDL get 
+PASS input.formEnctype: IDL set to &quot;text/plain\0&quot; should not throw 
+PASS input.formEnctype: IDL set to &quot;text/plain\0&quot; followed by getAttribute() 
+PASS input.formEnctype: IDL set to &quot;text/plain\0&quot; followed by IDL get 
+PASS input.formEnctype: IDL set to &quot;ext/plain&quot; should not throw 
+PASS input.formEnctype: IDL set to &quot;ext/plain&quot; followed by getAttribute() 
+PASS input.formEnctype: IDL set to &quot;ext/plain&quot; followed by IDL get 
+PASS input.formEnctype: IDL set to &quot;TEXT/PLAIN&quot; should not throw 
+PASS input.formEnctype: IDL set to &quot;TEXT/PLAIN&quot; followed by getAttribute() 
+PASS input.formEnctype: IDL set to &quot;TEXT/PLAIN&quot; followed by IDL get 
+PASS input.formMethod: typeof IDL attribute 
+PASS input.formMethod: IDL get with DOM attribute unset 
+PASS input.formMethod: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.formMethod: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.formMethod: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.formMethod: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.formMethod: setAttribute() to undefined followed by getAttribute() 
+PASS input.formMethod: setAttribute() to undefined followed by IDL get 
+PASS input.formMethod: setAttribute() to 7 followed by getAttribute() 
+PASS input.formMethod: setAttribute() to 7 followed by IDL get 
+PASS input.formMethod: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.formMethod: setAttribute() to 1.5 followed by IDL get 
+PASS input.formMethod: setAttribute() to true followed by getAttribute() 
+PASS input.formMethod: setAttribute() to true followed by IDL get 
+PASS input.formMethod: setAttribute() to false followed by getAttribute() 
+PASS input.formMethod: setAttribute() to false followed by IDL get 
+PASS input.formMethod: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.formMethod: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.formMethod: setAttribute() to NaN followed by getAttribute() 
+PASS input.formMethod: setAttribute() to NaN followed by IDL get 
+PASS input.formMethod: setAttribute() to Infinity followed by getAttribute() 
+PASS input.formMethod: setAttribute() to Infinity followed by IDL get 
+PASS input.formMethod: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.formMethod: setAttribute() to -Infinity followed by IDL get 
+PASS input.formMethod: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.formMethod: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.formMethod: setAttribute() to null followed by getAttribute() 
+PASS input.formMethod: setAttribute() to null followed by IDL get 
+PASS input.formMethod: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.formMethod: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.formMethod: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.formMethod: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.formMethod: setAttribute() to &quot;get&quot; followed by getAttribute() 
+PASS input.formMethod: setAttribute() to &quot;get&quot; followed by IDL get 
+PASS input.formMethod: setAttribute() to &quot;xget&quot; followed by getAttribute() 
+PASS input.formMethod: setAttribute() to &quot;xget&quot; followed by IDL get 
+PASS input.formMethod: setAttribute() to &quot;get\0&quot; followed by getAttribute() 
+PASS input.formMethod: setAttribute() to &quot;get\0&quot; followed by IDL get 
+PASS input.formMethod: setAttribute() to &quot;et&quot; followed by getAttribute() 
+PASS input.formMethod: setAttribute() to &quot;et&quot; followed by IDL get 
+PASS input.formMethod: setAttribute() to &quot;GET&quot; followed by getAttribute() 
+PASS input.formMethod: setAttribute() to &quot;GET&quot; followed by IDL get 
+PASS input.formMethod: setAttribute() to &quot;post&quot; followed by getAttribute() 
+PASS input.formMethod: setAttribute() to &quot;post&quot; followed by IDL get 
+PASS input.formMethod: setAttribute() to &quot;xpost&quot; followed by getAttribute() 
+PASS input.formMethod: setAttribute() to &quot;xpost&quot; followed by IDL get 
+PASS input.formMethod: setAttribute() to &quot;post\0&quot; followed by getAttribute() 
+PASS input.formMethod: setAttribute() to &quot;post\0&quot; followed by IDL get 
+PASS input.formMethod: setAttribute() to &quot;ost&quot; followed by getAttribute() 
+PASS input.formMethod: setAttribute() to &quot;ost&quot; followed by IDL get 
+PASS input.formMethod: setAttribute() to &quot;POST&quot; followed by getAttribute() 
+PASS input.formMethod: setAttribute() to &quot;POST&quot; followed by IDL get 
+PASS input.formMethod: IDL set to &quot;&quot; should not throw 
+PASS input.formMethod: IDL set to &quot;&quot; followed by getAttribute() 
+PASS input.formMethod: IDL set to &quot;&quot; followed by IDL get 
+PASS input.formMethod: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS input.formMethod: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.formMethod: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.formMethod: IDL set to undefined should not throw 
+PASS input.formMethod: IDL set to undefined followed by getAttribute() 
+PASS input.formMethod: IDL set to undefined followed by IDL get 
+PASS input.formMethod: IDL set to 7 should not throw 
+PASS input.formMethod: IDL set to 7 followed by getAttribute() 
+PASS input.formMethod: IDL set to 7 followed by IDL get 
+PASS input.formMethod: IDL set to 1.5 should not throw 
+PASS input.formMethod: IDL set to 1.5 followed by getAttribute() 
+PASS input.formMethod: IDL set to 1.5 followed by IDL get 
+PASS input.formMethod: IDL set to true should not throw 
+PASS input.formMethod: IDL set to true followed by getAttribute() 
+PASS input.formMethod: IDL set to true followed by IDL get 
+PASS input.formMethod: IDL set to false should not throw 
+PASS input.formMethod: IDL set to false followed by getAttribute() 
+PASS input.formMethod: IDL set to false followed by IDL get 
+PASS input.formMethod: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.formMethod: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.formMethod: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.formMethod: IDL set to NaN should not throw 
+PASS input.formMethod: IDL set to NaN followed by getAttribute() 
+PASS input.formMethod: IDL set to NaN followed by IDL get 
+PASS input.formMethod: IDL set to Infinity should not throw 
+PASS input.formMethod: IDL set to Infinity followed by getAttribute() 
+PASS input.formMethod: IDL set to Infinity followed by IDL get 
+PASS input.formMethod: IDL set to -Infinity should not throw 
+PASS input.formMethod: IDL set to -Infinity followed by getAttribute() 
+PASS input.formMethod: IDL set to -Infinity followed by IDL get 
+PASS input.formMethod: IDL set to &quot;\0&quot; should not throw 
+PASS input.formMethod: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS input.formMethod: IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.formMethod: IDL set to null should not throw 
+FAIL input.formMethod: IDL set to null followed by IDL get assert_equals: expected &quot;get&quot; but got &quot;&quot;
+PASS input.formMethod: IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.formMethod: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.formMethod: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.formMethod: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.formMethod: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.formMethod: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.formMethod: IDL set to &quot;get&quot; should not throw 
+PASS input.formMethod: IDL set to &quot;get&quot; followed by getAttribute() 
+PASS input.formMethod: IDL set to &quot;get&quot; followed by IDL get 
+PASS input.formMethod: IDL set to &quot;xget&quot; should not throw 
+PASS input.formMethod: IDL set to &quot;xget&quot; followed by getAttribute() 
+PASS input.formMethod: IDL set to &quot;xget&quot; followed by IDL get 
+PASS input.formMethod: IDL set to &quot;get\0&quot; should not throw 
+PASS input.formMethod: IDL set to &quot;get\0&quot; followed by getAttribute() 
+PASS input.formMethod: IDL set to &quot;get\0&quot; followed by IDL get 
+PASS input.formMethod: IDL set to &quot;et&quot; should not throw 
+PASS input.formMethod: IDL set to &quot;et&quot; followed by getAttribute() 
+PASS input.formMethod: IDL set to &quot;et&quot; followed by IDL get 
+PASS input.formMethod: IDL set to &quot;GET&quot; should not throw 
+PASS input.formMethod: IDL set to &quot;GET&quot; followed by getAttribute() 
+PASS input.formMethod: IDL set to &quot;GET&quot; followed by IDL get 
+PASS input.formMethod: IDL set to &quot;post&quot; should not throw 
+PASS input.formMethod: IDL set to &quot;post&quot; followed by getAttribute() 
+PASS input.formMethod: IDL set to &quot;post&quot; followed by IDL get 
+PASS input.formMethod: IDL set to &quot;xpost&quot; should not throw 
+PASS input.formMethod: IDL set to &quot;xpost&quot; followed by getAttribute() 
+PASS input.formMethod: IDL set to &quot;xpost&quot; followed by IDL get 
+PASS input.formMethod: IDL set to &quot;post\0&quot; should not throw 
+PASS input.formMethod: IDL set to &quot;post\0&quot; followed by getAttribute() 
+PASS input.formMethod: IDL set to &quot;post\0&quot; followed by IDL get 
+PASS input.formMethod: IDL set to &quot;ost&quot; should not throw 
+PASS input.formMethod: IDL set to &quot;ost&quot; followed by getAttribute() 
+PASS input.formMethod: IDL set to &quot;ost&quot; followed by IDL get 
+PASS input.formMethod: IDL set to &quot;POST&quot; should not throw 
+PASS input.formMethod: IDL set to &quot;POST&quot; followed by getAttribute() 
+PASS input.formMethod: IDL set to &quot;POST&quot; followed by IDL get 
+PASS input.formNoValidate: typeof IDL attribute 
+PASS input.formNoValidate: IDL get with DOM attribute unset 
+PASS input.formNoValidate: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.formNoValidate: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.formNoValidate: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS input.formNoValidate: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS input.formNoValidate: setAttribute() to undefined followed by getAttribute() 
+PASS input.formNoValidate: setAttribute() to undefined followed by IDL get 
+PASS input.formNoValidate: setAttribute() to null followed by getAttribute() 
+PASS input.formNoValidate: setAttribute() to null followed by IDL get 
+PASS input.formNoValidate: setAttribute() to 7 followed by getAttribute() 
+PASS input.formNoValidate: setAttribute() to 7 followed by IDL get 
+PASS input.formNoValidate: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.formNoValidate: setAttribute() to 1.5 followed by IDL get 
+PASS input.formNoValidate: setAttribute() to true followed by getAttribute() 
+PASS input.formNoValidate: setAttribute() to true followed by IDL get 
+PASS input.formNoValidate: setAttribute() to false followed by getAttribute() 
+PASS input.formNoValidate: setAttribute() to false followed by IDL get 
+PASS input.formNoValidate: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.formNoValidate: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.formNoValidate: setAttribute() to NaN followed by getAttribute() 
+PASS input.formNoValidate: setAttribute() to NaN followed by IDL get 
+PASS input.formNoValidate: setAttribute() to Infinity followed by getAttribute() 
+PASS input.formNoValidate: setAttribute() to Infinity followed by IDL get 
+PASS input.formNoValidate: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.formNoValidate: setAttribute() to -Infinity followed by IDL get 
+PASS input.formNoValidate: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.formNoValidate: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.formNoValidate: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.formNoValidate: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.formNoValidate: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.formNoValidate: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.formNoValidate: setAttribute() to &quot;formNoValidate&quot; followed by getAttribute() 
+PASS input.formNoValidate: setAttribute() to &quot;formNoValidate&quot; followed by IDL get 
+PASS input.formNoValidate: IDL set to &quot;&quot; should not throw 
+PASS input.formNoValidate: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS input.formNoValidate: IDL set to &quot;&quot; followed by IDL get 
+PASS input.formNoValidate: IDL set to &quot; foo &quot; should not throw 
+PASS input.formNoValidate: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS input.formNoValidate: IDL set to &quot; foo &quot; followed by IDL get 
+PASS input.formNoValidate: IDL set to undefined should not throw 
+PASS input.formNoValidate: IDL set to undefined followed by hasAttribute() 
+PASS input.formNoValidate: IDL set to undefined followed by IDL get 
+PASS input.formNoValidate: IDL set to null should not throw 
+PASS input.formNoValidate: IDL set to null followed by hasAttribute() 
+PASS input.formNoValidate: IDL set to null followed by IDL get 
+PASS input.formNoValidate: IDL set to 7 should not throw 
+PASS input.formNoValidate: IDL set to 7 followed by hasAttribute() 
+PASS input.formNoValidate: IDL set to 7 followed by IDL get 
+PASS input.formNoValidate: IDL set to 1.5 should not throw 
+PASS input.formNoValidate: IDL set to 1.5 followed by hasAttribute() 
+PASS input.formNoValidate: IDL set to 1.5 followed by IDL get 
+PASS input.formNoValidate: IDL set to true should not throw 
+PASS input.formNoValidate: IDL set to true followed by hasAttribute() 
+PASS input.formNoValidate: IDL set to true followed by IDL get 
+PASS input.formNoValidate: IDL set to false should not throw 
+PASS input.formNoValidate: IDL set to false followed by hasAttribute() 
+PASS input.formNoValidate: IDL set to false followed by IDL get 
+PASS input.formNoValidate: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.formNoValidate: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS input.formNoValidate: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.formNoValidate: IDL set to NaN should not throw 
+PASS input.formNoValidate: IDL set to NaN followed by hasAttribute() 
+PASS input.formNoValidate: IDL set to NaN followed by IDL get 
+PASS input.formNoValidate: IDL set to Infinity should not throw 
+PASS input.formNoValidate: IDL set to Infinity followed by hasAttribute() 
+PASS input.formNoValidate: IDL set to Infinity followed by IDL get 
+PASS input.formNoValidate: IDL set to -Infinity should not throw 
+PASS input.formNoValidate: IDL set to -Infinity followed by hasAttribute() 
+PASS input.formNoValidate: IDL set to -Infinity followed by IDL get 
+PASS input.formNoValidate: IDL set to &quot;\0&quot; should not throw 
+PASS input.formNoValidate: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS input.formNoValidate: IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.formNoValidate: IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.formNoValidate: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS input.formNoValidate: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.formNoValidate: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.formNoValidate: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS input.formNoValidate: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.formTarget: typeof IDL attribute 
+PASS input.formTarget: IDL get with DOM attribute unset 
+PASS input.formTarget: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.formTarget: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.formTarget: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.formTarget: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.formTarget: setAttribute() to undefined followed by getAttribute() 
+PASS input.formTarget: setAttribute() to undefined followed by IDL get 
+PASS input.formTarget: setAttribute() to 7 followed by getAttribute() 
+PASS input.formTarget: setAttribute() to 7 followed by IDL get 
+PASS input.formTarget: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.formTarget: setAttribute() to 1.5 followed by IDL get 
+PASS input.formTarget: setAttribute() to true followed by getAttribute() 
+PASS input.formTarget: setAttribute() to true followed by IDL get 
+PASS input.formTarget: setAttribute() to false followed by getAttribute() 
+PASS input.formTarget: setAttribute() to false followed by IDL get 
+PASS input.formTarget: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.formTarget: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.formTarget: setAttribute() to NaN followed by getAttribute() 
+PASS input.formTarget: setAttribute() to NaN followed by IDL get 
+PASS input.formTarget: setAttribute() to Infinity followed by getAttribute() 
+PASS input.formTarget: setAttribute() to Infinity followed by IDL get 
+PASS input.formTarget: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.formTarget: setAttribute() to -Infinity followed by IDL get 
+PASS input.formTarget: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.formTarget: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.formTarget: setAttribute() to null followed by getAttribute() 
+PASS input.formTarget: setAttribute() to null followed by IDL get 
+PASS input.formTarget: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.formTarget: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.formTarget: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.formTarget: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.formTarget: IDL set to &quot;&quot; should not throw 
+PASS input.formTarget: IDL set to &quot;&quot; followed by getAttribute() 
+PASS input.formTarget: IDL set to &quot;&quot; followed by IDL get 
+PASS input.formTarget: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS input.formTarget: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.formTarget: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.formTarget: IDL set to undefined should not throw 
+PASS input.formTarget: IDL set to undefined followed by getAttribute() 
+PASS input.formTarget: IDL set to undefined followed by IDL get 
+PASS input.formTarget: IDL set to 7 should not throw 
+PASS input.formTarget: IDL set to 7 followed by getAttribute() 
+PASS input.formTarget: IDL set to 7 followed by IDL get 
+PASS input.formTarget: IDL set to 1.5 should not throw 
+PASS input.formTarget: IDL set to 1.5 followed by getAttribute() 
+PASS input.formTarget: IDL set to 1.5 followed by IDL get 
+PASS input.formTarget: IDL set to true should not throw 
+PASS input.formTarget: IDL set to true followed by getAttribute() 
+PASS input.formTarget: IDL set to true followed by IDL get 
+PASS input.formTarget: IDL set to false should not throw 
+PASS input.formTarget: IDL set to false followed by getAttribute() 
+PASS input.formTarget: IDL set to false followed by IDL get 
+PASS input.formTarget: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.formTarget: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.formTarget: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.formTarget: IDL set to NaN should not throw 
+PASS input.formTarget: IDL set to NaN followed by getAttribute() 
+PASS input.formTarget: IDL set to NaN followed by IDL get 
+PASS input.formTarget: IDL set to Infinity should not throw 
+PASS input.formTarget: IDL set to Infinity followed by getAttribute() 
+PASS input.formTarget: IDL set to Infinity followed by IDL get 
+PASS input.formTarget: IDL set to -Infinity should not throw 
+PASS input.formTarget: IDL set to -Infinity followed by getAttribute() 
+PASS input.formTarget: IDL set to -Infinity followed by IDL get 
+PASS input.formTarget: IDL set to &quot;\0&quot; should not throw 
+PASS input.formTarget: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS input.formTarget: IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.formTarget: IDL set to null should not throw 
+PASS input.formTarget: IDL set to null followed by getAttribute() 
+PASS input.formTarget: IDL set to null followed by IDL get 
+PASS input.formTarget: IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.formTarget: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.formTarget: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.formTarget: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.formTarget: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.formTarget: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+FAIL input.inputMode: typeof IDL attribute assert_equals: expected &quot;string&quot; but got &quot;undefined&quot;
+FAIL input.inputMode: IDL get with DOM attribute unset assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to undefined followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to undefined followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to 7 followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to 7 followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to 1.5 followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to 1.5 followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to true followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to true followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to false followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to false followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to object &quot;[object Object]&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to NaN followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to NaN followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to Infinity followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to Infinity followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to -Infinity followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to -Infinity followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;\0&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to null followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to null followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to object &quot;test-toString&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;verbatim&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;verbatim&quot; followed by IDL get assert_equals: expected (string) &quot;verbatim&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;xverbatim&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;xverbatim&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;verbatim\0&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;verbatim\0&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;erbatim&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;erbatim&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;VERBATIM&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;VERBATIM&quot; followed by IDL get assert_equals: expected (string) &quot;verbatim&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;latin&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;latin&quot; followed by IDL get assert_equals: expected (string) &quot;latin&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;xlatin&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;xlatin&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;latin\0&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;latin\0&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;atin&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;atin&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;LATIN&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;LATIN&quot; followed by IDL get assert_equals: expected (string) &quot;latin&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;latin-name&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;latin-name&quot; followed by IDL get assert_equals: expected (string) &quot;latin-name&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;xlatin-name&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;xlatin-name&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;latin-name\0&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;latin-name\0&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;atin-name&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;atin-name&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;LATIN-NAME&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;LATIN-NAME&quot; followed by IDL get assert_equals: expected (string) &quot;latin-name&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;latin-prose&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;latin-prose&quot; followed by IDL get assert_equals: expected (string) &quot;latin-prose&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;xlatin-prose&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;xlatin-prose&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;latin-prose\0&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;latin-prose\0&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;atin-prose&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;atin-prose&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;LATIN-PROSE&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;LATIN-PROSE&quot; followed by IDL get assert_equals: expected (string) &quot;latin-prose&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;full-width-latin&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;full-width-latin&quot; followed by IDL get assert_equals: expected (string) &quot;full-width-latin&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;xfull-width-latin&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;xfull-width-latin&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;full-width-latin\0&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;full-width-latin\0&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;ull-width-latin&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;ull-width-latin&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;FULL-WIDTH-LATIN&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;FULL-WIDTH-LATIN&quot; followed by IDL get assert_equals: expected (string) &quot;full-width-latin&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;kana&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;kana&quot; followed by IDL get assert_equals: expected (string) &quot;kana&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;xkana&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;xkana&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;kana\0&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;kana\0&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;ana&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;ana&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;KANA&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;KANA&quot; followed by IDL get assert_equals: expected (string) &quot;kana&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;katakana&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;katakana&quot; followed by IDL get assert_equals: expected (string) &quot;katakana&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;xkatakana&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;xkatakana&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;katakana\0&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;katakana\0&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;atakana&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;atakana&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;KATAKANA&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;KATAKANA&quot; followed by IDL get assert_equals: expected (string) &quot;katakana&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;numeric&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;numeric&quot; followed by IDL get assert_equals: expected (string) &quot;numeric&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;xnumeric&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;xnumeric&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;numeric\0&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;numeric\0&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;umeric&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;umeric&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;NUMERIC&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;NUMERIC&quot; followed by IDL get assert_equals: expected (string) &quot;numeric&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;tel&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;tel&quot; followed by IDL get assert_equals: expected (string) &quot;tel&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;xtel&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;xtel&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;tel\0&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;tel\0&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;el&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;el&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;TEL&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;TEL&quot; followed by IDL get assert_equals: expected (string) &quot;tel&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;email&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;email&quot; followed by IDL get assert_equals: expected (string) &quot;email&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;xemail&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;xemail&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;email\0&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;email\0&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;mail&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;mail&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;EMAIL&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;EMAIL&quot; followed by IDL get assert_equals: expected (string) &quot;email&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;url&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;url&quot; followed by IDL get assert_equals: expected (string) &quot;url&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;xurl&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;xurl&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;url\0&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;url\0&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;rl&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;rl&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: setAttribute() to &quot;URL&quot; followed by getAttribute() 
+FAIL input.inputMode: setAttribute() to &quot;URL&quot; followed by IDL get assert_equals: expected (string) &quot;url&quot; but got (undefined) undefined
+PASS input.inputMode: IDL set to &quot;&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;&quot; followed by getAttribute() assert_equals: expected &quot;&quot; but got &quot;URL&quot;
+PASS input.inputMode: IDL set to &quot;&quot; followed by IDL get 
+PASS input.inputMode: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+FAIL input.inputMode: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() assert_equals: expected &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot;
+PASS input.inputMode: IDL set to undefined should not throw 
+FAIL input.inputMode: IDL set to undefined followed by getAttribute() assert_equals: expected &quot;undefined&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to undefined followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS input.inputMode: IDL set to 7 should not throw 
+FAIL input.inputMode: IDL set to 7 followed by getAttribute() assert_equals: expected &quot;7&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to 7 followed by IDL get assert_equals: expected (string) &quot;&quot; but got (number) 7
+PASS input.inputMode: IDL set to 1.5 should not throw 
+FAIL input.inputMode: IDL set to 1.5 followed by getAttribute() assert_equals: expected &quot;1.5&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to 1.5 followed by IDL get assert_equals: expected (string) &quot;&quot; but got (number) 1.5
+PASS input.inputMode: IDL set to true should not throw 
+FAIL input.inputMode: IDL set to true followed by getAttribute() assert_equals: expected &quot;true&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to true followed by IDL get assert_equals: expected (string) &quot;&quot; but got (boolean) true
+PASS input.inputMode: IDL set to false should not throw 
+FAIL input.inputMode: IDL set to false followed by getAttribute() assert_equals: expected &quot;false&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to false followed by IDL get assert_equals: expected (string) &quot;&quot; but got (boolean) false
+PASS input.inputMode: IDL set to object &quot;[object Object]&quot; should not throw 
+FAIL input.inputMode: IDL set to object &quot;[object Object]&quot; followed by getAttribute() assert_equals: expected &quot;[object Object]&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to object &quot;[object Object]&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (object) object &quot;[object Object]&quot;
+PASS input.inputMode: IDL set to NaN should not throw 
+FAIL input.inputMode: IDL set to NaN followed by getAttribute() assert_equals: expected &quot;NaN&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to NaN followed by IDL get assert_equals: expected (string) &quot;&quot; but got (number) NaN
+PASS input.inputMode: IDL set to Infinity should not throw 
+FAIL input.inputMode: IDL set to Infinity followed by getAttribute() assert_equals: expected &quot;Infinity&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to Infinity followed by IDL get assert_equals: expected (string) &quot;&quot; but got (number) Infinity
+PASS input.inputMode: IDL set to -Infinity should not throw 
+FAIL input.inputMode: IDL set to -Infinity followed by getAttribute() assert_equals: expected &quot;-Infinity&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to -Infinity followed by IDL get assert_equals: expected (string) &quot;&quot; but got (number) -Infinity
+PASS input.inputMode: IDL set to &quot;\0&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;\0&quot; followed by getAttribute() assert_equals: expected &quot;\0&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;\0&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;\0&quot;
+PASS input.inputMode: IDL set to null should not throw 
+FAIL input.inputMode: IDL set to null followed by IDL get assert_equals: expected (string) &quot;&quot; but got (object) null
+PASS input.inputMode: IDL set to object &quot;test-toString&quot; should not throw 
+FAIL input.inputMode: IDL set to object &quot;test-toString&quot; followed by getAttribute() assert_equals: expected &quot;test-toString&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to object &quot;test-toString&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (object) object &quot;test-toString&quot;
+PASS input.inputMode: IDL set to object &quot;test-valueOf&quot; should not throw 
+FAIL input.inputMode: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() assert_equals: expected &quot;test-valueOf&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to object &quot;test-valueOf&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (object) object &quot;test-valueOf&quot;
+PASS input.inputMode: IDL set to &quot;verbatim&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;verbatim&quot; followed by getAttribute() assert_equals: expected &quot;verbatim&quot; but got &quot;URL&quot;
+PASS input.inputMode: IDL set to &quot;verbatim&quot; followed by IDL get 
+PASS input.inputMode: IDL set to &quot;xverbatim&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;xverbatim&quot; followed by getAttribute() assert_equals: expected &quot;xverbatim&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;xverbatim&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;xverbatim&quot;
+PASS input.inputMode: IDL set to &quot;verbatim\0&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;verbatim\0&quot; followed by getAttribute() assert_equals: expected &quot;verbatim\0&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;verbatim\0&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;verbatim\0&quot;
+PASS input.inputMode: IDL set to &quot;erbatim&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;erbatim&quot; followed by getAttribute() assert_equals: expected &quot;erbatim&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;erbatim&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;erbatim&quot;
+PASS input.inputMode: IDL set to &quot;VERBATIM&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;VERBATIM&quot; followed by getAttribute() assert_equals: expected &quot;VERBATIM&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;VERBATIM&quot; followed by IDL get assert_equals: expected &quot;verbatim&quot; but got &quot;VERBATIM&quot;
+PASS input.inputMode: IDL set to &quot;latin&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;latin&quot; followed by getAttribute() assert_equals: expected &quot;latin&quot; but got &quot;URL&quot;
+PASS input.inputMode: IDL set to &quot;latin&quot; followed by IDL get 
+PASS input.inputMode: IDL set to &quot;xlatin&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;xlatin&quot; followed by getAttribute() assert_equals: expected &quot;xlatin&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;xlatin&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;xlatin&quot;
+PASS input.inputMode: IDL set to &quot;latin\0&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;latin\0&quot; followed by getAttribute() assert_equals: expected &quot;latin\0&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;latin\0&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;latin\0&quot;
+PASS input.inputMode: IDL set to &quot;atin&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;atin&quot; followed by getAttribute() assert_equals: expected &quot;atin&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;atin&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;atin&quot;
+PASS input.inputMode: IDL set to &quot;LATIN&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;LATIN&quot; followed by getAttribute() assert_equals: expected &quot;LATIN&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;LATIN&quot; followed by IDL get assert_equals: expected &quot;latin&quot; but got &quot;LATIN&quot;
+PASS input.inputMode: IDL set to &quot;latin-name&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;latin-name&quot; followed by getAttribute() assert_equals: expected &quot;latin-name&quot; but got &quot;URL&quot;
+PASS input.inputMode: IDL set to &quot;latin-name&quot; followed by IDL get 
+PASS input.inputMode: IDL set to &quot;xlatin-name&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;xlatin-name&quot; followed by getAttribute() assert_equals: expected &quot;xlatin-name&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;xlatin-name&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;xlatin-name&quot;
+PASS input.inputMode: IDL set to &quot;latin-name\0&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;latin-name\0&quot; followed by getAttribute() assert_equals: expected &quot;latin-name\0&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;latin-name\0&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;latin-name\0&quot;
+PASS input.inputMode: IDL set to &quot;atin-name&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;atin-name&quot; followed by getAttribute() assert_equals: expected &quot;atin-name&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;atin-name&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;atin-name&quot;
+PASS input.inputMode: IDL set to &quot;LATIN-NAME&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;LATIN-NAME&quot; followed by getAttribute() assert_equals: expected &quot;LATIN-NAME&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;LATIN-NAME&quot; followed by IDL get assert_equals: expected &quot;latin-name&quot; but got &quot;LATIN-NAME&quot;
+PASS input.inputMode: IDL set to &quot;latin-prose&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;latin-prose&quot; followed by getAttribute() assert_equals: expected &quot;latin-prose&quot; but got &quot;URL&quot;
+PASS input.inputMode: IDL set to &quot;latin-prose&quot; followed by IDL get 
+PASS input.inputMode: IDL set to &quot;xlatin-prose&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;xlatin-prose&quot; followed by getAttribute() assert_equals: expected &quot;xlatin-prose&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;xlatin-prose&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;xlatin-prose&quot;
+PASS input.inputMode: IDL set to &quot;latin-prose\0&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;latin-prose\0&quot; followed by getAttribute() assert_equals: expected &quot;latin-prose\0&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;latin-prose\0&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;latin-prose\0&quot;
+PASS input.inputMode: IDL set to &quot;atin-prose&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;atin-prose&quot; followed by getAttribute() assert_equals: expected &quot;atin-prose&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;atin-prose&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;atin-prose&quot;
+PASS input.inputMode: IDL set to &quot;LATIN-PROSE&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;LATIN-PROSE&quot; followed by getAttribute() assert_equals: expected &quot;LATIN-PROSE&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;LATIN-PROSE&quot; followed by IDL get assert_equals: expected &quot;latin-prose&quot; but got &quot;LATIN-PROSE&quot;
+PASS input.inputMode: IDL set to &quot;full-width-latin&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;full-width-latin&quot; followed by getAttribute() assert_equals: expected &quot;full-width-latin&quot; but got &quot;URL&quot;
+PASS input.inputMode: IDL set to &quot;full-width-latin&quot; followed by IDL get 
+PASS input.inputMode: IDL set to &quot;xfull-width-latin&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;xfull-width-latin&quot; followed by getAttribute() assert_equals: expected &quot;xfull-width-latin&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;xfull-width-latin&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;xfull-width-latin&quot;
+PASS input.inputMode: IDL set to &quot;full-width-latin\0&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;full-width-latin\0&quot; followed by getAttribute() assert_equals: expected &quot;full-width-latin\0&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;full-width-latin\0&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;full-width-latin\0&quot;
+PASS input.inputMode: IDL set to &quot;ull-width-latin&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;ull-width-latin&quot; followed by getAttribute() assert_equals: expected &quot;ull-width-latin&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;ull-width-latin&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;ull-width-latin&quot;
+PASS input.inputMode: IDL set to &quot;FULL-WIDTH-LATIN&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;FULL-WIDTH-LATIN&quot; followed by getAttribute() assert_equals: expected &quot;FULL-WIDTH-LATIN&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;FULL-WIDTH-LATIN&quot; followed by IDL get assert_equals: expected &quot;full-width-latin&quot; but got &quot;FULL-WIDTH-LATIN&quot;
+PASS input.inputMode: IDL set to &quot;kana&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;kana&quot; followed by getAttribute() assert_equals: expected &quot;kana&quot; but got &quot;URL&quot;
+PASS input.inputMode: IDL set to &quot;kana&quot; followed by IDL get 
+PASS input.inputMode: IDL set to &quot;xkana&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;xkana&quot; followed by getAttribute() assert_equals: expected &quot;xkana&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;xkana&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;xkana&quot;
+PASS input.inputMode: IDL set to &quot;kana\0&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;kana\0&quot; followed by getAttribute() assert_equals: expected &quot;kana\0&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;kana\0&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;kana\0&quot;
+PASS input.inputMode: IDL set to &quot;ana&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;ana&quot; followed by getAttribute() assert_equals: expected &quot;ana&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;ana&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;ana&quot;
+PASS input.inputMode: IDL set to &quot;KANA&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;KANA&quot; followed by getAttribute() assert_equals: expected &quot;KANA&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;KANA&quot; followed by IDL get assert_equals: expected &quot;kana&quot; but got &quot;KANA&quot;
+PASS input.inputMode: IDL set to &quot;katakana&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;katakana&quot; followed by getAttribute() assert_equals: expected &quot;katakana&quot; but got &quot;URL&quot;
+PASS input.inputMode: IDL set to &quot;katakana&quot; followed by IDL get 
+PASS input.inputMode: IDL set to &quot;xkatakana&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;xkatakana&quot; followed by getAttribute() assert_equals: expected &quot;xkatakana&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;xkatakana&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;xkatakana&quot;
+PASS input.inputMode: IDL set to &quot;katakana\0&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;katakana\0&quot; followed by getAttribute() assert_equals: expected &quot;katakana\0&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;katakana\0&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;katakana\0&quot;
+PASS input.inputMode: IDL set to &quot;atakana&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;atakana&quot; followed by getAttribute() assert_equals: expected &quot;atakana&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;atakana&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;atakana&quot;
+PASS input.inputMode: IDL set to &quot;KATAKANA&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;KATAKANA&quot; followed by getAttribute() assert_equals: expected &quot;KATAKANA&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;KATAKANA&quot; followed by IDL get assert_equals: expected &quot;katakana&quot; but got &quot;KATAKANA&quot;
+PASS input.inputMode: IDL set to &quot;numeric&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;numeric&quot; followed by getAttribute() assert_equals: expected &quot;numeric&quot; but got &quot;URL&quot;
+PASS input.inputMode: IDL set to &quot;numeric&quot; followed by IDL get 
+PASS input.inputMode: IDL set to &quot;xnumeric&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;xnumeric&quot; followed by getAttribute() assert_equals: expected &quot;xnumeric&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;xnumeric&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;xnumeric&quot;
+PASS input.inputMode: IDL set to &quot;numeric\0&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;numeric\0&quot; followed by getAttribute() assert_equals: expected &quot;numeric\0&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;numeric\0&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;numeric\0&quot;
+PASS input.inputMode: IDL set to &quot;umeric&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;umeric&quot; followed by getAttribute() assert_equals: expected &quot;umeric&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;umeric&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;umeric&quot;
+PASS input.inputMode: IDL set to &quot;NUMERIC&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;NUMERIC&quot; followed by getAttribute() assert_equals: expected &quot;NUMERIC&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;NUMERIC&quot; followed by IDL get assert_equals: expected &quot;numeric&quot; but got &quot;NUMERIC&quot;
+PASS input.inputMode: IDL set to &quot;tel&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;tel&quot; followed by getAttribute() assert_equals: expected &quot;tel&quot; but got &quot;URL&quot;
+PASS input.inputMode: IDL set to &quot;tel&quot; followed by IDL get 
+PASS input.inputMode: IDL set to &quot;xtel&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;xtel&quot; followed by getAttribute() assert_equals: expected &quot;xtel&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;xtel&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;xtel&quot;
+PASS input.inputMode: IDL set to &quot;tel\0&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;tel\0&quot; followed by getAttribute() assert_equals: expected &quot;tel\0&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;tel\0&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;tel\0&quot;
+PASS input.inputMode: IDL set to &quot;el&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;el&quot; followed by getAttribute() assert_equals: expected &quot;el&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;el&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;el&quot;
+PASS input.inputMode: IDL set to &quot;TEL&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;TEL&quot; followed by getAttribute() assert_equals: expected &quot;TEL&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;TEL&quot; followed by IDL get assert_equals: expected &quot;tel&quot; but got &quot;TEL&quot;
+PASS input.inputMode: IDL set to &quot;email&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;email&quot; followed by getAttribute() assert_equals: expected &quot;email&quot; but got &quot;URL&quot;
+PASS input.inputMode: IDL set to &quot;email&quot; followed by IDL get 
+PASS input.inputMode: IDL set to &quot;xemail&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;xemail&quot; followed by getAttribute() assert_equals: expected &quot;xemail&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;xemail&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;xemail&quot;
+PASS input.inputMode: IDL set to &quot;email\0&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;email\0&quot; followed by getAttribute() assert_equals: expected &quot;email\0&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;email\0&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;email\0&quot;
+PASS input.inputMode: IDL set to &quot;mail&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;mail&quot; followed by getAttribute() assert_equals: expected &quot;mail&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;mail&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;mail&quot;
+PASS input.inputMode: IDL set to &quot;EMAIL&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;EMAIL&quot; followed by getAttribute() assert_equals: expected &quot;EMAIL&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;EMAIL&quot; followed by IDL get assert_equals: expected &quot;email&quot; but got &quot;EMAIL&quot;
+PASS input.inputMode: IDL set to &quot;url&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;url&quot; followed by getAttribute() assert_equals: expected &quot;url&quot; but got &quot;URL&quot;
+PASS input.inputMode: IDL set to &quot;url&quot; followed by IDL get 
+PASS input.inputMode: IDL set to &quot;xurl&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;xurl&quot; followed by getAttribute() assert_equals: expected &quot;xurl&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;xurl&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;xurl&quot;
+PASS input.inputMode: IDL set to &quot;url\0&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;url\0&quot; followed by getAttribute() assert_equals: expected &quot;url\0&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;url\0&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;url\0&quot;
+PASS input.inputMode: IDL set to &quot;rl&quot; should not throw 
+FAIL input.inputMode: IDL set to &quot;rl&quot; followed by getAttribute() assert_equals: expected &quot;rl&quot; but got &quot;URL&quot;
+FAIL input.inputMode: IDL set to &quot;rl&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;rl&quot;
+PASS input.inputMode: IDL set to &quot;URL&quot; should not throw 
+PASS input.inputMode: IDL set to &quot;URL&quot; followed by getAttribute() 
+FAIL input.inputMode: IDL set to &quot;URL&quot; followed by IDL get assert_equals: expected &quot;url&quot; but got &quot;URL&quot;
+PASS input.max: typeof IDL attribute 
+PASS input.max: IDL get with DOM attribute unset 
+PASS input.max: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.max: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.max: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.max: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.max: setAttribute() to undefined followed by getAttribute() 
+PASS input.max: setAttribute() to undefined followed by IDL get 
+PASS input.max: setAttribute() to 7 followed by getAttribute() 
+PASS input.max: setAttribute() to 7 followed by IDL get 
+PASS input.max: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.max: setAttribute() to 1.5 followed by IDL get 
+PASS input.max: setAttribute() to true followed by getAttribute() 
+PASS input.max: setAttribute() to true followed by IDL get 
+PASS input.max: setAttribute() to false followed by getAttribute() 
+PASS input.max: setAttribute() to false followed by IDL get 
+PASS input.max: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.max: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.max: setAttribute() to NaN followed by getAttribute() 
+PASS input.max: setAttribute() to NaN followed by IDL get 
+PASS input.max: setAttribute() to Infinity followed by getAttribute() 
+PASS input.max: setAttribute() to Infinity followed by IDL get 
+PASS input.max: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.max: setAttribute() to -Infinity followed by IDL get 
+PASS input.max: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.max: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.max: setAttribute() to null followed by getAttribute() 
+PASS input.max: setAttribute() to null followed by IDL get 
+PASS input.max: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.max: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.max: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.max: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.max: IDL set to &quot;&quot; should not throw 
+PASS input.max: IDL set to &quot;&quot; followed by getAttribute() 
+PASS input.max: IDL set to &quot;&quot; followed by IDL get 
+PASS input.max: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS input.max: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.max: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.max: IDL set to undefined should not throw 
+PASS input.max: IDL set to undefined followed by getAttribute() 
+PASS input.max: IDL set to undefined followed by IDL get 
+PASS input.max: IDL set to 7 should not throw 
+PASS input.max: IDL set to 7 followed by getAttribute() 
+PASS input.max: IDL set to 7 followed by IDL get 
+PASS input.max: IDL set to 1.5 should not throw 
+PASS input.max: IDL set to 1.5 followed by getAttribute() 
+PASS input.max: IDL set to 1.5 followed by IDL get 
+PASS input.max: IDL set to true should not throw 
+PASS input.max: IDL set to true followed by getAttribute() 
+PASS input.max: IDL set to true followed by IDL get 
+PASS input.max: IDL set to false should not throw 
+PASS input.max: IDL set to false followed by getAttribute() 
+PASS input.max: IDL set to false followed by IDL get 
+PASS input.max: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.max: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.max: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.max: IDL set to NaN should not throw 
+PASS input.max: IDL set to NaN followed by getAttribute() 
+PASS input.max: IDL set to NaN followed by IDL get 
+PASS input.max: IDL set to Infinity should not throw 
+PASS input.max: IDL set to Infinity followed by getAttribute() 
+PASS input.max: IDL set to Infinity followed by IDL get 
+PASS input.max: IDL set to -Infinity should not throw 
+PASS input.max: IDL set to -Infinity followed by getAttribute() 
+PASS input.max: IDL set to -Infinity followed by IDL get 
+PASS input.max: IDL set to &quot;\0&quot; should not throw 
+PASS input.max: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS input.max: IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.max: IDL set to null should not throw 
+PASS input.max: IDL set to null followed by getAttribute() 
+PASS input.max: IDL set to null followed by IDL get 
+PASS input.max: IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.max: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.max: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.max: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.max: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.max: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.maxLength: typeof IDL attribute 
+PASS input.maxLength: IDL get with DOM attribute unset 
+PASS input.maxLength: setAttribute() to -2147483649 followed by getAttribute() 
+PASS input.maxLength: setAttribute() to -2147483649 followed by IDL get 
+PASS input.maxLength: setAttribute() to -2147483648 followed by getAttribute() 
+PASS input.maxLength: setAttribute() to -2147483648 followed by IDL get 
+PASS input.maxLength: setAttribute() to -36 followed by getAttribute() 
+PASS input.maxLength: setAttribute() to -36 followed by IDL get 
+PASS input.maxLength: setAttribute() to -1 followed by getAttribute() 
+PASS input.maxLength: setAttribute() to -1 followed by IDL get 
+PASS input.maxLength: setAttribute() to -0 followed by getAttribute() 
+PASS input.maxLength: setAttribute() to -0 followed by IDL get 
+PASS input.maxLength: setAttribute() to 0 followed by getAttribute() 
+PASS input.maxLength: setAttribute() to 0 followed by IDL get 
+PASS input.maxLength: setAttribute() to 1 followed by getAttribute() 
+PASS input.maxLength: setAttribute() to 1 followed by IDL get 
+PASS input.maxLength: setAttribute() to 2147483647 followed by getAttribute() 
+PASS input.maxLength: setAttribute() to 2147483647 followed by IDL get 
+PASS input.maxLength: setAttribute() to 2147483648 followed by getAttribute() 
+PASS input.maxLength: setAttribute() to 2147483648 followed by IDL get 
+PASS input.maxLength: setAttribute() to 4294967295 followed by getAttribute() 
+PASS input.maxLength: setAttribute() to 4294967295 followed by IDL get 
+PASS input.maxLength: setAttribute() to 4294967296 followed by getAttribute() 
+PASS input.maxLength: setAttribute() to 4294967296 followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot;-1&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot;-1&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot;-0&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot;-0&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot;0&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot;0&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot;1&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot;1&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot;\t7&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot;\t7&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot;\v7&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot;\v7&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot;\f7&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot;\f7&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot;7&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot;7&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot;\n7&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot;\n7&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot;\r7&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot;\r7&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot;
7&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot;
7&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot;
7&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot;
7&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot;᠎7&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot;᠎7&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to undefined followed by getAttribute() 
+PASS input.maxLength: setAttribute() to undefined followed by IDL get 
+PASS input.maxLength: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.maxLength: setAttribute() to 1.5 followed by IDL get 
+PASS input.maxLength: setAttribute() to true followed by getAttribute() 
+PASS input.maxLength: setAttribute() to true followed by IDL get 
+PASS input.maxLength: setAttribute() to false followed by getAttribute() 
+PASS input.maxLength: setAttribute() to false followed by IDL get 
+PASS input.maxLength: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to NaN followed by getAttribute() 
+PASS input.maxLength: setAttribute() to NaN followed by IDL get 
+PASS input.maxLength: setAttribute() to Infinity followed by getAttribute() 
+PASS input.maxLength: setAttribute() to Infinity followed by IDL get 
+PASS input.maxLength: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.maxLength: setAttribute() to -Infinity followed by IDL get 
+PASS input.maxLength: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to object &quot;2&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to object &quot;2&quot; followed by IDL get 
+PASS input.maxLength: setAttribute() to object &quot;3&quot; followed by getAttribute() 
+PASS input.maxLength: setAttribute() to object &quot;3&quot; followed by IDL get 
+PASS input.maxLength: IDL set to -2147483648 must throw INDEX_SIZE_ERR 
+PASS input.maxLength: IDL set to -36 must throw INDEX_SIZE_ERR 
+PASS input.maxLength: IDL set to -1 must throw INDEX_SIZE_ERR 
+PASS input.maxLength: IDL set to 0 should not throw 
+PASS input.maxLength: IDL set to 0 followed by getAttribute() 
+PASS input.maxLength: IDL set to 0 followed by IDL get 
+PASS input.maxLength: IDL set to 1 should not throw 
+PASS input.maxLength: IDL set to 1 followed by getAttribute() 
+PASS input.maxLength: IDL set to 1 followed by IDL get 
+PASS input.maxLength: IDL set to 2147483647 should not throw 
+PASS input.maxLength: IDL set to 2147483647 followed by getAttribute() 
+PASS input.maxLength: IDL set to 2147483647 followed by IDL get 
+PASS input.min: typeof IDL attribute 
+PASS input.min: IDL get with DOM attribute unset 
+PASS input.min: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.min: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.min: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.min: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.min: setAttribute() to undefined followed by getAttribute() 
+PASS input.min: setAttribute() to undefined followed by IDL get 
+PASS input.min: setAttribute() to 7 followed by getAttribute() 
+PASS input.min: setAttribute() to 7 followed by IDL get 
+PASS input.min: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.min: setAttribute() to 1.5 followed by IDL get 
+PASS input.min: setAttribute() to true followed by getAttribute() 
+PASS input.min: setAttribute() to true followed by IDL get 
+PASS input.min: setAttribute() to false followed by getAttribute() 
+PASS input.min: setAttribute() to false followed by IDL get 
+PASS input.min: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.min: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.min: setAttribute() to NaN followed by getAttribute() 
+PASS input.min: setAttribute() to NaN followed by IDL get 
+PASS input.min: setAttribute() to Infinity followed by getAttribute() 
+PASS input.min: setAttribute() to Infinity followed by IDL get 
+PASS input.min: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.min: setAttribute() to -Infinity followed by IDL get 
+PASS input.min: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.min: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.min: setAttribute() to null followed by getAttribute() 
+PASS input.min: setAttribute() to null followed by IDL get 
+PASS input.min: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.min: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.min: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.min: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.min: IDL set to &quot;&quot; should not throw 
+PASS input.min: IDL set to &quot;&quot; followed by getAttribute() 
+PASS input.min: IDL set to &quot;&quot; followed by IDL get 
+PASS input.min: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS input.min: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.min: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.min: IDL set to undefined should not throw 
+PASS input.min: IDL set to undefined followed by getAttribute() 
+PASS input.min: IDL set to undefined followed by IDL get 
+PASS input.min: IDL set to 7 should not throw 
+PASS input.min: IDL set to 7 followed by getAttribute() 
+PASS input.min: IDL set to 7 followed by IDL get 
+PASS input.min: IDL set to 1.5 should not throw 
+PASS input.min: IDL set to 1.5 followed by getAttribute() 
+PASS input.min: IDL set to 1.5 followed by IDL get 
+PASS input.min: IDL set to true should not throw 
+PASS input.min: IDL set to true followed by getAttribute() 
+PASS input.min: IDL set to true followed by IDL get 
+PASS input.min: IDL set to false should not throw 
+PASS input.min: IDL set to false followed by getAttribute() 
+PASS input.min: IDL set to false followed by IDL get 
+PASS input.min: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.min: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.min: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.min: IDL set to NaN should not throw 
+PASS input.min: IDL set to NaN followed by getAttribute() 
+PASS input.min: IDL set to NaN followed by IDL get 
+PASS input.min: IDL set to Infinity should not throw 
+PASS input.min: IDL set to Infinity followed by getAttribute() 
+PASS input.min: IDL set to Infinity followed by IDL get 
+PASS input.min: IDL set to -Infinity should not throw 
+PASS input.min: IDL set to -Infinity followed by getAttribute() 
+PASS input.min: IDL set to -Infinity followed by IDL get 
+PASS input.min: IDL set to &quot;\0&quot; should not throw 
+PASS input.min: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS input.min: IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.min: IDL set to null should not throw 
+PASS input.min: IDL set to null followed by getAttribute() 
+PASS input.min: IDL set to null followed by IDL get 
+PASS input.min: IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.min: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.min: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.min: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.min: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.min: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.multiple: typeof IDL attribute 
+PASS input.multiple: IDL get with DOM attribute unset 
+PASS input.multiple: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.multiple: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.multiple: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS input.multiple: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS input.multiple: setAttribute() to undefined followed by getAttribute() 
+PASS input.multiple: setAttribute() to undefined followed by IDL get 
+PASS input.multiple: setAttribute() to null followed by getAttribute() 
+PASS input.multiple: setAttribute() to null followed by IDL get 
+PASS input.multiple: setAttribute() to 7 followed by getAttribute() 
+PASS input.multiple: setAttribute() to 7 followed by IDL get 
+PASS input.multiple: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.multiple: setAttribute() to 1.5 followed by IDL get 
+PASS input.multiple: setAttribute() to true followed by getAttribute() 
+PASS input.multiple: setAttribute() to true followed by IDL get 
+PASS input.multiple: setAttribute() to false followed by getAttribute() 
+PASS input.multiple: setAttribute() to false followed by IDL get 
+PASS input.multiple: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.multiple: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.multiple: setAttribute() to NaN followed by getAttribute() 
+PASS input.multiple: setAttribute() to NaN followed by IDL get 
+PASS input.multiple: setAttribute() to Infinity followed by getAttribute() 
+PASS input.multiple: setAttribute() to Infinity followed by IDL get 
+PASS input.multiple: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.multiple: setAttribute() to -Infinity followed by IDL get 
+PASS input.multiple: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.multiple: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.multiple: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.multiple: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.multiple: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.multiple: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.multiple: setAttribute() to &quot;multiple&quot; followed by getAttribute() 
+PASS input.multiple: setAttribute() to &quot;multiple&quot; followed by IDL get 
+PASS input.multiple: IDL set to &quot;&quot; should not throw 
+PASS input.multiple: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS input.multiple: IDL set to &quot;&quot; followed by IDL get 
+PASS input.multiple: IDL set to &quot; foo &quot; should not throw 
+PASS input.multiple: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS input.multiple: IDL set to &quot; foo &quot; followed by IDL get 
+PASS input.multiple: IDL set to undefined should not throw 
+PASS input.multiple: IDL set to undefined followed by hasAttribute() 
+PASS input.multiple: IDL set to undefined followed by IDL get 
+PASS input.multiple: IDL set to null should not throw 
+PASS input.multiple: IDL set to null followed by hasAttribute() 
+PASS input.multiple: IDL set to null followed by IDL get 
+PASS input.multiple: IDL set to 7 should not throw 
+PASS input.multiple: IDL set to 7 followed by hasAttribute() 
+PASS input.multiple: IDL set to 7 followed by IDL get 
+PASS input.multiple: IDL set to 1.5 should not throw 
+PASS input.multiple: IDL set to 1.5 followed by hasAttribute() 
+PASS input.multiple: IDL set to 1.5 followed by IDL get 
+PASS input.multiple: IDL set to true should not throw 
+PASS input.multiple: IDL set to true followed by hasAttribute() 
+PASS input.multiple: IDL set to true followed by IDL get 
+PASS input.multiple: IDL set to false should not throw 
+PASS input.multiple: IDL set to false followed by hasAttribute() 
+PASS input.multiple: IDL set to false followed by IDL get 
+PASS input.multiple: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.multiple: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS input.multiple: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.multiple: IDL set to NaN should not throw 
+PASS input.multiple: IDL set to NaN followed by hasAttribute() 
+PASS input.multiple: IDL set to NaN followed by IDL get 
+PASS input.multiple: IDL set to Infinity should not throw 
+PASS input.multiple: IDL set to Infinity followed by hasAttribute() 
+PASS input.multiple: IDL set to Infinity followed by IDL get 
+PASS input.multiple: IDL set to -Infinity should not throw 
+PASS input.multiple: IDL set to -Infinity followed by hasAttribute() 
+PASS input.multiple: IDL set to -Infinity followed by IDL get 
+PASS input.multiple: IDL set to &quot;\0&quot; should not throw 
+PASS input.multiple: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS input.multiple: IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.multiple: IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.multiple: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS input.multiple: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.multiple: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.multiple: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS input.multiple: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.name: typeof IDL attribute 
+PASS input.name: IDL get with DOM attribute unset 
+PASS input.name: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.name: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.name: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.name: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.name: setAttribute() to undefined followed by getAttribute() 
+PASS input.name: setAttribute() to undefined followed by IDL get 
+PASS input.name: setAttribute() to 7 followed by getAttribute() 
+PASS input.name: setAttribute() to 7 followed by IDL get 
+PASS input.name: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.name: setAttribute() to 1.5 followed by IDL get 
+PASS input.name: setAttribute() to true followed by getAttribute() 
+PASS input.name: setAttribute() to true followed by IDL get 
+PASS input.name: setAttribute() to false followed by getAttribute() 
+PASS input.name: setAttribute() to false followed by IDL get 
+PASS input.name: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.name: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.name: setAttribute() to NaN followed by getAttribute() 
+PASS input.name: setAttribute() to NaN followed by IDL get 
+PASS input.name: setAttribute() to Infinity followed by getAttribute() 
+PASS input.name: setAttribute() to Infinity followed by IDL get 
+PASS input.name: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.name: setAttribute() to -Infinity followed by IDL get 
+PASS input.name: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.name: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.name: setAttribute() to null followed by getAttribute() 
+PASS input.name: setAttribute() to null followed by IDL get 
+PASS input.name: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.name: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.name: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.name: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.name: IDL set to &quot;&quot; should not throw 
+PASS input.name: IDL set to &quot;&quot; followed by getAttribute() 
+PASS input.name: IDL set to &quot;&quot; followed by IDL get 
+PASS input.name: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS input.name: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.name: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.name: IDL set to undefined should not throw 
+PASS input.name: IDL set to undefined followed by getAttribute() 
+PASS input.name: IDL set to undefined followed by IDL get 
+PASS input.name: IDL set to 7 should not throw 
+PASS input.name: IDL set to 7 followed by getAttribute() 
+PASS input.name: IDL set to 7 followed by IDL get 
+PASS input.name: IDL set to 1.5 should not throw 
+PASS input.name: IDL set to 1.5 followed by getAttribute() 
+PASS input.name: IDL set to 1.5 followed by IDL get 
+PASS input.name: IDL set to true should not throw 
+PASS input.name: IDL set to true followed by getAttribute() 
+PASS input.name: IDL set to true followed by IDL get 
+PASS input.name: IDL set to false should not throw 
+PASS input.name: IDL set to false followed by getAttribute() 
+PASS input.name: IDL set to false followed by IDL get 
+PASS input.name: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.name: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.name: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.name: IDL set to NaN should not throw 
+PASS input.name: IDL set to NaN followed by getAttribute() 
+PASS input.name: IDL set to NaN followed by IDL get 
+PASS input.name: IDL set to Infinity should not throw 
+PASS input.name: IDL set to Infinity followed by getAttribute() 
+PASS input.name: IDL set to Infinity followed by IDL get 
+PASS input.name: IDL set to -Infinity should not throw 
+PASS input.name: IDL set to -Infinity followed by getAttribute() 
+PASS input.name: IDL set to -Infinity followed by IDL get 
+PASS input.name: IDL set to &quot;\0&quot; should not throw 
+PASS input.name: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS input.name: IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.name: IDL set to null should not throw 
+PASS input.name: IDL set to null followed by getAttribute() 
+PASS input.name: IDL set to null followed by IDL get 
+PASS input.name: IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.name: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.name: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.name: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.name: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.name: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.pattern: typeof IDL attribute 
+PASS input.pattern: IDL get with DOM attribute unset 
+PASS input.pattern: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.pattern: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.pattern: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.pattern: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.pattern: setAttribute() to undefined followed by getAttribute() 
+PASS input.pattern: setAttribute() to undefined followed by IDL get 
+PASS input.pattern: setAttribute() to 7 followed by getAttribute() 
+PASS input.pattern: setAttribute() to 7 followed by IDL get 
+PASS input.pattern: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.pattern: setAttribute() to 1.5 followed by IDL get 
+PASS input.pattern: setAttribute() to true followed by getAttribute() 
+PASS input.pattern: setAttribute() to true followed by IDL get 
+PASS input.pattern: setAttribute() to false followed by getAttribute() 
+PASS input.pattern: setAttribute() to false followed by IDL get 
+PASS input.pattern: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.pattern: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.pattern: setAttribute() to NaN followed by getAttribute() 
+PASS input.pattern: setAttribute() to NaN followed by IDL get 
+PASS input.pattern: setAttribute() to Infinity followed by getAttribute() 
+PASS input.pattern: setAttribute() to Infinity followed by IDL get 
+PASS input.pattern: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.pattern: setAttribute() to -Infinity followed by IDL get 
+PASS input.pattern: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.pattern: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.pattern: setAttribute() to null followed by getAttribute() 
+PASS input.pattern: setAttribute() to null followed by IDL get 
+PASS input.pattern: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.pattern: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.pattern: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.pattern: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.pattern: IDL set to &quot;&quot; should not throw 
+PASS input.pattern: IDL set to &quot;&quot; followed by getAttribute() 
+PASS input.pattern: IDL set to &quot;&quot; followed by IDL get 
+PASS input.pattern: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS input.pattern: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.pattern: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.pattern: IDL set to undefined should not throw 
+PASS input.pattern: IDL set to undefined followed by getAttribute() 
+PASS input.pattern: IDL set to undefined followed by IDL get 
+PASS input.pattern: IDL set to 7 should not throw 
+PASS input.pattern: IDL set to 7 followed by getAttribute() 
+PASS input.pattern: IDL set to 7 followed by IDL get 
+PASS input.pattern: IDL set to 1.5 should not throw 
+PASS input.pattern: IDL set to 1.5 followed by getAttribute() 
+PASS input.pattern: IDL set to 1.5 followed by IDL get 
+PASS input.pattern: IDL set to true should not throw 
+PASS input.pattern: IDL set to true followed by getAttribute() 
+PASS input.pattern: IDL set to true followed by IDL get 
+PASS input.pattern: IDL set to false should not throw 
+PASS input.pattern: IDL set to false followed by getAttribute() 
+PASS input.pattern: IDL set to false followed by IDL get 
+PASS input.pattern: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.pattern: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.pattern: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.pattern: IDL set to NaN should not throw 
+PASS input.pattern: IDL set to NaN followed by getAttribute() 
+PASS input.pattern: IDL set to NaN followed by IDL get 
+PASS input.pattern: IDL set to Infinity should not throw 
+PASS input.pattern: IDL set to Infinity followed by getAttribute() 
+PASS input.pattern: IDL set to Infinity followed by IDL get 
+PASS input.pattern: IDL set to -Infinity should not throw 
+PASS input.pattern: IDL set to -Infinity followed by getAttribute() 
+PASS input.pattern: IDL set to -Infinity followed by IDL get 
+PASS input.pattern: IDL set to &quot;\0&quot; should not throw 
+PASS input.pattern: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS input.pattern: IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.pattern: IDL set to null should not throw 
+PASS input.pattern: IDL set to null followed by getAttribute() 
+PASS input.pattern: IDL set to null followed by IDL get 
+PASS input.pattern: IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.pattern: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.pattern: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.pattern: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.pattern: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.pattern: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.placeholder: typeof IDL attribute 
+PASS input.placeholder: IDL get with DOM attribute unset 
+PASS input.placeholder: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.placeholder: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.placeholder: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.placeholder: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.placeholder: setAttribute() to undefined followed by getAttribute() 
+PASS input.placeholder: setAttribute() to undefined followed by IDL get 
+PASS input.placeholder: setAttribute() to 7 followed by getAttribute() 
+PASS input.placeholder: setAttribute() to 7 followed by IDL get 
+PASS input.placeholder: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.placeholder: setAttribute() to 1.5 followed by IDL get 
+PASS input.placeholder: setAttribute() to true followed by getAttribute() 
+PASS input.placeholder: setAttribute() to true followed by IDL get 
+PASS input.placeholder: setAttribute() to false followed by getAttribute() 
+PASS input.placeholder: setAttribute() to false followed by IDL get 
+PASS input.placeholder: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.placeholder: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.placeholder: setAttribute() to NaN followed by getAttribute() 
+PASS input.placeholder: setAttribute() to NaN followed by IDL get 
+PASS input.placeholder: setAttribute() to Infinity followed by getAttribute() 
+PASS input.placeholder: setAttribute() to Infinity followed by IDL get 
+PASS input.placeholder: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.placeholder: setAttribute() to -Infinity followed by IDL get 
+PASS input.placeholder: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.placeholder: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.placeholder: setAttribute() to null followed by getAttribute() 
+PASS input.placeholder: setAttribute() to null followed by IDL get 
+PASS input.placeholder: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.placeholder: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.placeholder: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.placeholder: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.placeholder: IDL set to &quot;&quot; should not throw 
+PASS input.placeholder: IDL set to &quot;&quot; followed by getAttribute() 
+PASS input.placeholder: IDL set to &quot;&quot; followed by IDL get 
+PASS input.placeholder: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS input.placeholder: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.placeholder: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.placeholder: IDL set to undefined should not throw 
+PASS input.placeholder: IDL set to undefined followed by getAttribute() 
+PASS input.placeholder: IDL set to undefined followed by IDL get 
+PASS input.placeholder: IDL set to 7 should not throw 
+PASS input.placeholder: IDL set to 7 followed by getAttribute() 
+PASS input.placeholder: IDL set to 7 followed by IDL get 
+PASS input.placeholder: IDL set to 1.5 should not throw 
+PASS input.placeholder: IDL set to 1.5 followed by getAttribute() 
+PASS input.placeholder: IDL set to 1.5 followed by IDL get 
+PASS input.placeholder: IDL set to true should not throw 
+PASS input.placeholder: IDL set to true followed by getAttribute() 
+PASS input.placeholder: IDL set to true followed by IDL get 
+PASS input.placeholder: IDL set to false should not throw 
+PASS input.placeholder: IDL set to false followed by getAttribute() 
+PASS input.placeholder: IDL set to false followed by IDL get 
+PASS input.placeholder: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.placeholder: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.placeholder: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.placeholder: IDL set to NaN should not throw 
+PASS input.placeholder: IDL set to NaN followed by getAttribute() 
+PASS input.placeholder: IDL set to NaN followed by IDL get 
+PASS input.placeholder: IDL set to Infinity should not throw 
+PASS input.placeholder: IDL set to Infinity followed by getAttribute() 
+PASS input.placeholder: IDL set to Infinity followed by IDL get 
+PASS input.placeholder: IDL set to -Infinity should not throw 
+PASS input.placeholder: IDL set to -Infinity followed by getAttribute() 
+PASS input.placeholder: IDL set to -Infinity followed by IDL get 
+PASS input.placeholder: IDL set to &quot;\0&quot; should not throw 
+PASS input.placeholder: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS input.placeholder: IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.placeholder: IDL set to null should not throw 
+PASS input.placeholder: IDL set to null followed by getAttribute() 
+PASS input.placeholder: IDL set to null followed by IDL get 
+PASS input.placeholder: IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.placeholder: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.placeholder: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.placeholder: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.placeholder: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.placeholder: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.readOnly: typeof IDL attribute 
+PASS input.readOnly: IDL get with DOM attribute unset 
+PASS input.readOnly: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.readOnly: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.readOnly: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS input.readOnly: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS input.readOnly: setAttribute() to undefined followed by getAttribute() 
+PASS input.readOnly: setAttribute() to undefined followed by IDL get 
+PASS input.readOnly: setAttribute() to null followed by getAttribute() 
+PASS input.readOnly: setAttribute() to null followed by IDL get 
+PASS input.readOnly: setAttribute() to 7 followed by getAttribute() 
+PASS input.readOnly: setAttribute() to 7 followed by IDL get 
+PASS input.readOnly: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.readOnly: setAttribute() to 1.5 followed by IDL get 
+PASS input.readOnly: setAttribute() to true followed by getAttribute() 
+PASS input.readOnly: setAttribute() to true followed by IDL get 
+PASS input.readOnly: setAttribute() to false followed by getAttribute() 
+PASS input.readOnly: setAttribute() to false followed by IDL get 
+PASS input.readOnly: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.readOnly: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.readOnly: setAttribute() to NaN followed by getAttribute() 
+PASS input.readOnly: setAttribute() to NaN followed by IDL get 
+PASS input.readOnly: setAttribute() to Infinity followed by getAttribute() 
+PASS input.readOnly: setAttribute() to Infinity followed by IDL get 
+PASS input.readOnly: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.readOnly: setAttribute() to -Infinity followed by IDL get 
+PASS input.readOnly: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.readOnly: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.readOnly: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.readOnly: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.readOnly: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.readOnly: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.readOnly: setAttribute() to &quot;readOnly&quot; followed by getAttribute() 
+PASS input.readOnly: setAttribute() to &quot;readOnly&quot; followed by IDL get 
+PASS input.readOnly: IDL set to &quot;&quot; should not throw 
+PASS input.readOnly: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS input.readOnly: IDL set to &quot;&quot; followed by IDL get 
+PASS input.readOnly: IDL set to &quot; foo &quot; should not throw 
+PASS input.readOnly: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS input.readOnly: IDL set to &quot; foo &quot; followed by IDL get 
+PASS input.readOnly: IDL set to undefined should not throw 
+PASS input.readOnly: IDL set to undefined followed by hasAttribute() 
+PASS input.readOnly: IDL set to undefined followed by IDL get 
+PASS input.readOnly: IDL set to null should not throw 
+PASS input.readOnly: IDL set to null followed by hasAttribute() 
+PASS input.readOnly: IDL set to null followed by IDL get 
+PASS input.readOnly: IDL set to 7 should not throw 
+PASS input.readOnly: IDL set to 7 followed by hasAttribute() 
+PASS input.readOnly: IDL set to 7 followed by IDL get 
+PASS input.readOnly: IDL set to 1.5 should not throw 
+PASS input.readOnly: IDL set to 1.5 followed by hasAttribute() 
+PASS input.readOnly: IDL set to 1.5 followed by IDL get 
+PASS input.readOnly: IDL set to true should not throw 
+PASS input.readOnly: IDL set to true followed by hasAttribute() 
+PASS input.readOnly: IDL set to true followed by IDL get 
+PASS input.readOnly: IDL set to false should not throw 
+PASS input.readOnly: IDL set to false followed by hasAttribute() 
+PASS input.readOnly: IDL set to false followed by IDL get 
+PASS input.readOnly: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.readOnly: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS input.readOnly: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.readOnly: IDL set to NaN should not throw 
+PASS input.readOnly: IDL set to NaN followed by hasAttribute() 
+PASS input.readOnly: IDL set to NaN followed by IDL get 
+PASS input.readOnly: IDL set to Infinity should not throw 
+PASS input.readOnly: IDL set to Infinity followed by hasAttribute() 
+PASS input.readOnly: IDL set to Infinity followed by IDL get 
+PASS input.readOnly: IDL set to -Infinity should not throw 
+PASS input.readOnly: IDL set to -Infinity followed by hasAttribute() 
+PASS input.readOnly: IDL set to -Infinity followed by IDL get 
+PASS input.readOnly: IDL set to &quot;\0&quot; should not throw 
+PASS input.readOnly: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS input.readOnly: IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.readOnly: IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.readOnly: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS input.readOnly: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.readOnly: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.readOnly: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS input.readOnly: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.required: typeof IDL attribute 
+PASS input.required: IDL get with DOM attribute unset 
+PASS input.required: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.required: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.required: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS input.required: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS input.required: setAttribute() to undefined followed by getAttribute() 
+PASS input.required: setAttribute() to undefined followed by IDL get 
+PASS input.required: setAttribute() to null followed by getAttribute() 
+PASS input.required: setAttribute() to null followed by IDL get 
+PASS input.required: setAttribute() to 7 followed by getAttribute() 
+PASS input.required: setAttribute() to 7 followed by IDL get 
+PASS input.required: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.required: setAttribute() to 1.5 followed by IDL get 
+PASS input.required: setAttribute() to true followed by getAttribute() 
+PASS input.required: setAttribute() to true followed by IDL get 
+PASS input.required: setAttribute() to false followed by getAttribute() 
+PASS input.required: setAttribute() to false followed by IDL get 
+PASS input.required: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.required: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.required: setAttribute() to NaN followed by getAttribute() 
+PASS input.required: setAttribute() to NaN followed by IDL get 
+PASS input.required: setAttribute() to Infinity followed by getAttribute() 
+PASS input.required: setAttribute() to Infinity followed by IDL get 
+PASS input.required: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.required: setAttribute() to -Infinity followed by IDL get 
+PASS input.required: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.required: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.required: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.required: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.required: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.required: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.required: setAttribute() to &quot;required&quot; followed by getAttribute() 
+PASS input.required: setAttribute() to &quot;required&quot; followed by IDL get 
+PASS input.required: IDL set to &quot;&quot; should not throw 
+PASS input.required: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS input.required: IDL set to &quot;&quot; followed by IDL get 
+PASS input.required: IDL set to &quot; foo &quot; should not throw 
+PASS input.required: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS input.required: IDL set to &quot; foo &quot; followed by IDL get 
+PASS input.required: IDL set to undefined should not throw 
+PASS input.required: IDL set to undefined followed by hasAttribute() 
+PASS input.required: IDL set to undefined followed by IDL get 
+PASS input.required: IDL set to null should not throw 
+PASS input.required: IDL set to null followed by hasAttribute() 
+PASS input.required: IDL set to null followed by IDL get 
+PASS input.required: IDL set to 7 should not throw 
+PASS input.required: IDL set to 7 followed by hasAttribute() 
+PASS input.required: IDL set to 7 followed by IDL get 
+PASS input.required: IDL set to 1.5 should not throw 
+PASS input.required: IDL set to 1.5 followed by hasAttribute() 
+PASS input.required: IDL set to 1.5 followed by IDL get 
+PASS input.required: IDL set to true should not throw 
+PASS input.required: IDL set to true followed by hasAttribute() 
+PASS input.required: IDL set to true followed by IDL get 
+PASS input.required: IDL set to false should not throw 
+PASS input.required: IDL set to false followed by hasAttribute() 
+PASS input.required: IDL set to false followed by IDL get 
+PASS input.required: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.required: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS input.required: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.required: IDL set to NaN should not throw 
+PASS input.required: IDL set to NaN followed by hasAttribute() 
+PASS input.required: IDL set to NaN followed by IDL get 
+PASS input.required: IDL set to Infinity should not throw 
+PASS input.required: IDL set to Infinity followed by hasAttribute() 
+PASS input.required: IDL set to Infinity followed by IDL get 
+PASS input.required: IDL set to -Infinity should not throw 
+PASS input.required: IDL set to -Infinity followed by hasAttribute() 
+PASS input.required: IDL set to -Infinity followed by IDL get 
+PASS input.required: IDL set to &quot;\0&quot; should not throw 
+PASS input.required: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS input.required: IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.required: IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.required: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS input.required: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.required: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.required: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS input.required: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.size: typeof IDL attribute 
+PASS input.size: IDL get with DOM attribute unset 
+PASS input.size: setAttribute() to -2147483649 followed by getAttribute() 
+PASS input.size: setAttribute() to -2147483649 followed by IDL get 
+PASS input.size: setAttribute() to -2147483648 followed by getAttribute() 
+PASS input.size: setAttribute() to -2147483648 followed by IDL get 
+PASS input.size: setAttribute() to -36 followed by getAttribute() 
+PASS input.size: setAttribute() to -36 followed by IDL get 
+PASS input.size: setAttribute() to -1 followed by getAttribute() 
+PASS input.size: setAttribute() to -1 followed by IDL get 
+PASS input.size: setAttribute() to 0 followed by getAttribute() 
+PASS input.size: setAttribute() to 0 followed by IDL get 
+PASS input.size: setAttribute() to 1 followed by getAttribute() 
+PASS input.size: setAttribute() to 1 followed by IDL get 
+PASS input.size: setAttribute() to 2147483647 followed by getAttribute() 
+PASS input.size: setAttribute() to 2147483647 followed by IDL get 
+PASS input.size: setAttribute() to 2147483648 followed by getAttribute() 
+PASS input.size: setAttribute() to 2147483648 followed by IDL get 
+PASS input.size: setAttribute() to 4294967295 followed by getAttribute() 
+PASS input.size: setAttribute() to 4294967295 followed by IDL get 
+PASS input.size: setAttribute() to 4294967296 followed by getAttribute() 
+PASS input.size: setAttribute() to 4294967296 followed by IDL get 
+PASS input.size: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot;-1&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot;-1&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot;-0&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot;-0&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot;0&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot;0&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot;1&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot;1&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot;\t7&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot;\t7&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot;\v7&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot;\v7&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot;\f7&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot;\f7&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot;7&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot;7&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot;\n7&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot;\n7&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot;\r7&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot;\r7&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot;
7&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot;
7&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot;
7&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot;
7&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot;᠎7&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot;᠎7&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS input.size: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.size: setAttribute() to undefined followed by getAttribute() 
+PASS input.size: setAttribute() to undefined followed by IDL get 
+PASS input.size: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.size: setAttribute() to 1.5 followed by IDL get 
+PASS input.size: setAttribute() to true followed by getAttribute() 
+PASS input.size: setAttribute() to true followed by IDL get 
+PASS input.size: setAttribute() to false followed by getAttribute() 
+PASS input.size: setAttribute() to false followed by IDL get 
+PASS input.size: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.size: setAttribute() to NaN followed by getAttribute() 
+PASS input.size: setAttribute() to NaN followed by IDL get 
+PASS input.size: setAttribute() to Infinity followed by getAttribute() 
+PASS input.size: setAttribute() to Infinity followed by IDL get 
+PASS input.size: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.size: setAttribute() to -Infinity followed by IDL get 
+PASS input.size: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.size: setAttribute() to object &quot;2&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to object &quot;2&quot; followed by IDL get 
+PASS input.size: setAttribute() to object &quot;3&quot; followed by getAttribute() 
+PASS input.size: setAttribute() to object &quot;3&quot; followed by IDL get 
+PASS input.size: IDL set to 0 must throw INDEX_SIZE_ERR 
+PASS input.size: IDL set to 1 should not throw 
+PASS input.size: IDL set to 1 followed by getAttribute() 
+PASS input.size: IDL set to 1 followed by IDL get 
+PASS input.size: IDL set to 2147483647 should not throw 
+PASS input.size: IDL set to 2147483647 followed by getAttribute() 
+PASS input.size: IDL set to 2147483647 followed by IDL get 
+PASS input.size: IDL set to 2147483648 should not throw 
+PASS input.size: IDL set to 2147483648 followed by getAttribute() 
+PASS input.size: IDL set to 2147483648 followed by IDL get 
+PASS input.size: IDL set to 4294967295 should not throw 
+PASS input.size: IDL set to 4294967295 followed by getAttribute() 
+PASS input.size: IDL set to 4294967295 followed by IDL get 
+PASS input.src: typeof IDL attribute 
+PASS input.src: IDL get with DOM attribute unset 
+PASS input.src: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.src: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.src: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS input.src: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS input.src: setAttribute() to &quot;http://site.example/&quot; followed by getAttribute() 
+PASS input.src: setAttribute() to &quot;http://site.example/&quot; followed by IDL get 
+PASS input.src: setAttribute() to &quot;//site.example/path???@#l&quot; followed by getAttribute() 
+PASS input.src: setAttribute() to &quot;//site.example/path???@#l&quot; followed by IDL get 
+PASS input.src: setAttribute() to &quot;\0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f &quot; followed by getAttribute() 
+PASS input.src: setAttribute() to &quot;\0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f &quot; followed by IDL get 
+PASS input.src: setAttribute() to undefined followed by getAttribute() 
+PASS input.src: setAttribute() to undefined followed by IDL get 
+PASS input.src: setAttribute() to 7 followed by getAttribute() 
+PASS input.src: setAttribute() to 7 followed by IDL get 
+PASS input.src: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.src: setAttribute() to 1.5 followed by IDL get 
+PASS input.src: setAttribute() to true followed by getAttribute() 
+PASS input.src: setAttribute() to true followed by IDL get 
+PASS input.src: setAttribute() to false followed by getAttribute() 
+PASS input.src: setAttribute() to false followed by IDL get 
+PASS input.src: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.src: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.src: setAttribute() to NaN followed by getAttribute() 
+PASS input.src: setAttribute() to NaN followed by IDL get 
+PASS input.src: setAttribute() to Infinity followed by getAttribute() 
+PASS input.src: setAttribute() to Infinity followed by IDL get 
+PASS input.src: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.src: setAttribute() to -Infinity followed by IDL get 
+PASS input.src: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.src: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.src: setAttribute() to null followed by getAttribute() 
+PASS input.src: setAttribute() to null followed by IDL get 
+PASS input.src: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.src: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.src: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.src: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.src: IDL set to &quot;&quot; should not throw 
+PASS input.src: IDL set to &quot;&quot; followed by getAttribute() 
+PASS input.src: IDL set to &quot;&quot; followed by IDL get 
+PASS input.src: IDL set to &quot; foo &quot; should not throw 
+PASS input.src: IDL set to &quot; foo &quot; followed by getAttribute() 
+PASS input.src: IDL set to &quot; foo &quot; followed by IDL get 
+PASS input.src: IDL set to &quot;http://site.example/&quot; should not throw 
+PASS input.src: IDL set to &quot;http://site.example/&quot; followed by getAttribute() 
+PASS input.src: IDL set to &quot;http://site.example/&quot; followed by IDL get 
+PASS input.src: IDL set to &quot;//site.example/path???@#l&quot; should not throw 
+PASS input.src: IDL set to &quot;//site.example/path???@#l&quot; followed by getAttribute() 
+PASS input.src: IDL set to &quot;//site.example/path???@#l&quot; followed by IDL get 
+PASS input.src: IDL set to &quot;\0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f &quot; should not throw 
+PASS input.src: IDL set to &quot;\0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f &quot; followed by getAttribute() 
+PASS input.src: IDL set to &quot;\0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f &quot; followed by IDL get 
+PASS input.src: IDL set to undefined should not throw 
+PASS input.src: IDL set to undefined followed by getAttribute() 
+PASS input.src: IDL set to undefined followed by IDL get 
+PASS input.src: IDL set to 7 should not throw 
+PASS input.src: IDL set to 7 followed by getAttribute() 
+PASS input.src: IDL set to 7 followed by IDL get 
+PASS input.src: IDL set to 1.5 should not throw 
+PASS input.src: IDL set to 1.5 followed by getAttribute() 
+PASS input.src: IDL set to 1.5 followed by IDL get 
+PASS input.src: IDL set to true should not throw 
+PASS input.src: IDL set to true followed by getAttribute() 
+PASS input.src: IDL set to true followed by IDL get 
+PASS input.src: IDL set to false should not throw 
+PASS input.src: IDL set to false followed by getAttribute() 
+PASS input.src: IDL set to false followed by IDL get 
+PASS input.src: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.src: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.src: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.src: IDL set to NaN should not throw 
+PASS input.src: IDL set to NaN followed by getAttribute() 
+PASS input.src: IDL set to NaN followed by IDL get 
+PASS input.src: IDL set to Infinity should not throw 
+PASS input.src: IDL set to Infinity followed by getAttribute() 
+PASS input.src: IDL set to Infinity followed by IDL get 
+PASS input.src: IDL set to -Infinity should not throw 
+PASS input.src: IDL set to -Infinity followed by getAttribute() 
+PASS input.src: IDL set to -Infinity followed by IDL get 
+PASS input.src: IDL set to &quot;\0&quot; should not throw 
+PASS input.src: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS input.src: IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.src: IDL set to null should not throw 
+PASS input.src: IDL set to null followed by getAttribute() 
+PASS input.src: IDL set to null followed by IDL get 
+PASS input.src: IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.src: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.src: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.src: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.src: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.src: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.step: typeof IDL attribute 
+PASS input.step: IDL get with DOM attribute unset 
+PASS input.step: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.step: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.step: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.step: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.step: setAttribute() to undefined followed by getAttribute() 
+PASS input.step: setAttribute() to undefined followed by IDL get 
+PASS input.step: setAttribute() to 7 followed by getAttribute() 
+PASS input.step: setAttribute() to 7 followed by IDL get 
+PASS input.step: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.step: setAttribute() to 1.5 followed by IDL get 
+PASS input.step: setAttribute() to true followed by getAttribute() 
+PASS input.step: setAttribute() to true followed by IDL get 
+PASS input.step: setAttribute() to false followed by getAttribute() 
+PASS input.step: setAttribute() to false followed by IDL get 
+PASS input.step: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.step: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.step: setAttribute() to NaN followed by getAttribute() 
+PASS input.step: setAttribute() to NaN followed by IDL get 
+PASS input.step: setAttribute() to Infinity followed by getAttribute() 
+PASS input.step: setAttribute() to Infinity followed by IDL get 
+PASS input.step: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.step: setAttribute() to -Infinity followed by IDL get 
+PASS input.step: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.step: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.step: setAttribute() to null followed by getAttribute() 
+PASS input.step: setAttribute() to null followed by IDL get 
+PASS input.step: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.step: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.step: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.step: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.step: IDL set to &quot;&quot; should not throw 
+PASS input.step: IDL set to &quot;&quot; followed by getAttribute() 
+PASS input.step: IDL set to &quot;&quot; followed by IDL get 
+PASS input.step: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS input.step: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.step: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.step: IDL set to undefined should not throw 
+PASS input.step: IDL set to undefined followed by getAttribute() 
+PASS input.step: IDL set to undefined followed by IDL get 
+PASS input.step: IDL set to 7 should not throw 
+PASS input.step: IDL set to 7 followed by getAttribute() 
+PASS input.step: IDL set to 7 followed by IDL get 
+PASS input.step: IDL set to 1.5 should not throw 
+PASS input.step: IDL set to 1.5 followed by getAttribute() 
+PASS input.step: IDL set to 1.5 followed by IDL get 
+PASS input.step: IDL set to true should not throw 
+PASS input.step: IDL set to true followed by getAttribute() 
+PASS input.step: IDL set to true followed by IDL get 
+PASS input.step: IDL set to false should not throw 
+PASS input.step: IDL set to false followed by getAttribute() 
+PASS input.step: IDL set to false followed by IDL get 
+PASS input.step: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.step: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.step: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.step: IDL set to NaN should not throw 
+PASS input.step: IDL set to NaN followed by getAttribute() 
+PASS input.step: IDL set to NaN followed by IDL get 
+PASS input.step: IDL set to Infinity should not throw 
+PASS input.step: IDL set to Infinity followed by getAttribute() 
+PASS input.step: IDL set to Infinity followed by IDL get 
+PASS input.step: IDL set to -Infinity should not throw 
+PASS input.step: IDL set to -Infinity followed by getAttribute() 
+PASS input.step: IDL set to -Infinity followed by IDL get 
+PASS input.step: IDL set to &quot;\0&quot; should not throw 
+PASS input.step: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS input.step: IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.step: IDL set to null should not throw 
+PASS input.step: IDL set to null followed by getAttribute() 
+PASS input.step: IDL set to null followed by IDL get 
+PASS input.step: IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.step: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.step: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.step: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.step: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.step: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.type: typeof IDL attribute 
+PASS input.type: IDL get with DOM attribute unset 
+PASS input.type: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.type: setAttribute() to undefined followed by getAttribute() 
+PASS input.type: setAttribute() to undefined followed by IDL get 
+PASS input.type: setAttribute() to 7 followed by getAttribute() 
+PASS input.type: setAttribute() to 7 followed by IDL get 
+PASS input.type: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.type: setAttribute() to 1.5 followed by IDL get 
+PASS input.type: setAttribute() to true followed by getAttribute() 
+PASS input.type: setAttribute() to true followed by IDL get 
+PASS input.type: setAttribute() to false followed by getAttribute() 
+PASS input.type: setAttribute() to false followed by IDL get 
+PASS input.type: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.type: setAttribute() to NaN followed by getAttribute() 
+PASS input.type: setAttribute() to NaN followed by IDL get 
+PASS input.type: setAttribute() to Infinity followed by getAttribute() 
+PASS input.type: setAttribute() to Infinity followed by IDL get 
+PASS input.type: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.type: setAttribute() to -Infinity followed by IDL get 
+PASS input.type: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.type: setAttribute() to null followed by getAttribute() 
+PASS input.type: setAttribute() to null followed by IDL get 
+PASS input.type: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.type: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;hidden&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;hidden&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;xhidden&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;xhidden&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;hidden\0&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;hidden\0&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;idden&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;idden&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;HIDDEN&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;HIDDEN&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;text&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;text&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;xtext&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;xtext&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;text\0&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;text\0&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;ext&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;ext&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;TEXT&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;TEXT&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;search&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;search&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;xsearch&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;xsearch&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;search\0&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;search\0&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;earch&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;earch&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;SEARCH&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;SEARCH&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;tel&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;tel&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;xtel&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;xtel&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;tel\0&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;tel\0&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;el&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;el&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;TEL&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;TEL&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;url&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;url&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;xurl&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;xurl&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;url\0&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;url\0&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;rl&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;rl&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;URL&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;URL&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;email&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;email&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;xemail&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;xemail&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;email\0&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;email\0&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;mail&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;mail&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;EMAIL&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;EMAIL&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;password&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;password&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;xpassword&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;xpassword&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;password\0&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;password\0&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;assword&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;assword&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;PASSWORD&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;PASSWORD&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;datetime&quot; followed by getAttribute() 
+FAIL input.type: setAttribute() to &quot;datetime&quot; followed by IDL get assert_equals: expected &quot;datetime&quot; but got &quot;text&quot;
+PASS input.type: setAttribute() to &quot;xdatetime&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;xdatetime&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;datetime\0&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;datetime\0&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;atetime&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;atetime&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;DATETIME&quot; followed by getAttribute() 
+FAIL input.type: setAttribute() to &quot;DATETIME&quot; followed by IDL get assert_equals: expected &quot;datetime&quot; but got &quot;text&quot;
+PASS input.type: setAttribute() to &quot;date&quot; followed by getAttribute() 
+FAIL input.type: setAttribute() to &quot;date&quot; followed by IDL get assert_equals: expected &quot;date&quot; but got &quot;text&quot;
+PASS input.type: setAttribute() to &quot;xdate&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;xdate&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;date\0&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;date\0&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;ate&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;ate&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;DATE&quot; followed by getAttribute() 
+FAIL input.type: setAttribute() to &quot;DATE&quot; followed by IDL get assert_equals: expected &quot;date&quot; but got &quot;text&quot;
+PASS input.type: setAttribute() to &quot;month&quot; followed by getAttribute() 
+FAIL input.type: setAttribute() to &quot;month&quot; followed by IDL get assert_equals: expected &quot;month&quot; but got &quot;text&quot;
+PASS input.type: setAttribute() to &quot;xmonth&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;xmonth&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;month\0&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;month\0&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;onth&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;onth&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;MONTH&quot; followed by getAttribute() 
+FAIL input.type: setAttribute() to &quot;MONTH&quot; followed by IDL get assert_equals: expected &quot;month&quot; but got &quot;text&quot;
+PASS input.type: setAttribute() to &quot;week&quot; followed by getAttribute() 
+FAIL input.type: setAttribute() to &quot;week&quot; followed by IDL get assert_equals: expected &quot;week&quot; but got &quot;text&quot;
+PASS input.type: setAttribute() to &quot;xweek&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;xweek&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;week\0&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;week\0&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;eek&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;eek&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;WEEK&quot; followed by getAttribute() 
+FAIL input.type: setAttribute() to &quot;WEEK&quot; followed by IDL get assert_equals: expected &quot;week&quot; but got &quot;text&quot;
+PASS input.type: setAttribute() to &quot;time&quot; followed by getAttribute() 
+FAIL input.type: setAttribute() to &quot;time&quot; followed by IDL get assert_equals: expected &quot;time&quot; but got &quot;text&quot;
+PASS input.type: setAttribute() to &quot;xtime&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;xtime&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;time\0&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;time\0&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;ime&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;ime&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;TIME&quot; followed by getAttribute() 
+FAIL input.type: setAttribute() to &quot;TIME&quot; followed by IDL get assert_equals: expected &quot;time&quot; but got &quot;text&quot;
+PASS input.type: setAttribute() to &quot;datetime-local&quot; followed by getAttribute() 
+FAIL input.type: setAttribute() to &quot;datetime-local&quot; followed by IDL get assert_equals: expected &quot;datetime-local&quot; but got &quot;text&quot;
+PASS input.type: setAttribute() to &quot;xdatetime-local&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;xdatetime-local&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;datetime-local\0&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;datetime-local\0&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;atetime-local&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;atetime-local&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;DATETIME-LOCAL&quot; followed by getAttribute() 
+FAIL input.type: setAttribute() to &quot;DATETIME-LOCAL&quot; followed by IDL get assert_equals: expected &quot;datetime-local&quot; but got &quot;text&quot;
+PASS input.type: setAttribute() to &quot;number&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;number&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;xnumber&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;xnumber&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;number\0&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;number\0&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;umber&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;umber&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;NUMBER&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;NUMBER&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;range&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;range&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;xrange&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;xrange&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;range\0&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;range\0&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;ange&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;ange&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;RANGE&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;RANGE&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;color&quot; followed by getAttribute() 
+FAIL input.type: setAttribute() to &quot;color&quot; followed by IDL get assert_equals: expected &quot;color&quot; but got &quot;text&quot;
+PASS input.type: setAttribute() to &quot;xcolor&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;xcolor&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;color\0&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;color\0&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;olor&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;olor&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;COLOR&quot; followed by getAttribute() 
+FAIL input.type: setAttribute() to &quot;COLOR&quot; followed by IDL get assert_equals: expected &quot;color&quot; but got &quot;text&quot;
+PASS input.type: setAttribute() to &quot;checkbox&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;checkbox&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;xcheckbox&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;xcheckbox&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;checkbox\0&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;checkbox\0&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;heckbox&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;heckbox&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;CHECKBOX&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;CHECKBOX&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;radio&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;radio&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;xradio&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;xradio&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;radio\0&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;radio\0&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;adio&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;adio&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;RADIO&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;RADIO&quot; followed by IDL get 
+FAIL input.type: setAttribute() to &quot;file&quot; followed by getAttribute() assert_equals: expected &quot;file&quot; but got &quot;radio&quot;
+FAIL input.type: setAttribute() to &quot;file&quot; followed by IDL get assert_equals: expected &quot;file&quot; but got &quot;radio&quot;
+PASS input.type: setAttribute() to &quot;xfile&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;xfile&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;file\0&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;file\0&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;ile&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;ile&quot; followed by IDL get 
+FAIL input.type: setAttribute() to &quot;FILE&quot; followed by getAttribute() assert_equals: expected &quot;FILE&quot; but got &quot;text&quot;
+FAIL input.type: setAttribute() to &quot;FILE&quot; followed by IDL get assert_equals: expected &quot;file&quot; but got &quot;text&quot;
+PASS input.type: setAttribute() to &quot;submit&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;submit&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;xsubmit&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;xsubmit&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;submit\0&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;submit\0&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;ubmit&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;ubmit&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;SUBMIT&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;SUBMIT&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;image&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;image&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;ximage&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;ximage&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;image\0&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;image\0&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;mage&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;mage&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;IMAGE&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;IMAGE&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;reset&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;reset&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;xreset&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;xreset&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;reset\0&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;reset\0&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;eset&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;eset&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;RESET&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;RESET&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;button&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;button&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;xbutton&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;xbutton&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;button\0&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;button\0&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;utton&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;utton&quot; followed by IDL get 
+PASS input.type: setAttribute() to &quot;BUTTON&quot; followed by getAttribute() 
+PASS input.type: setAttribute() to &quot;BUTTON&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;&quot; should not throw 
+PASS input.type: IDL set to &quot;&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;&quot; followed by IDL get 
+PASS input.type: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS input.type: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.type: IDL set to undefined should not throw 
+PASS input.type: IDL set to undefined followed by getAttribute() 
+PASS input.type: IDL set to undefined followed by IDL get 
+PASS input.type: IDL set to 7 should not throw 
+PASS input.type: IDL set to 7 followed by getAttribute() 
+PASS input.type: IDL set to 7 followed by IDL get 
+PASS input.type: IDL set to 1.5 should not throw 
+PASS input.type: IDL set to 1.5 followed by getAttribute() 
+PASS input.type: IDL set to 1.5 followed by IDL get 
+PASS input.type: IDL set to true should not throw 
+PASS input.type: IDL set to true followed by getAttribute() 
+PASS input.type: IDL set to true followed by IDL get 
+PASS input.type: IDL set to false should not throw 
+PASS input.type: IDL set to false followed by getAttribute() 
+PASS input.type: IDL set to false followed by IDL get 
+PASS input.type: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.type: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.type: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.type: IDL set to NaN should not throw 
+PASS input.type: IDL set to NaN followed by getAttribute() 
+PASS input.type: IDL set to NaN followed by IDL get 
+PASS input.type: IDL set to Infinity should not throw 
+PASS input.type: IDL set to Infinity followed by getAttribute() 
+PASS input.type: IDL set to Infinity followed by IDL get 
+PASS input.type: IDL set to -Infinity should not throw 
+PASS input.type: IDL set to -Infinity followed by getAttribute() 
+PASS input.type: IDL set to -Infinity followed by IDL get 
+PASS input.type: IDL set to &quot;\0&quot; should not throw 
+PASS input.type: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.type: IDL set to null should not throw 
+PASS input.type: IDL set to null followed by IDL get 
+PASS input.type: IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.type: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.type: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.type: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.type: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.type: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;hidden&quot; should not throw 
+PASS input.type: IDL set to &quot;hidden&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;hidden&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;xhidden&quot; should not throw 
+PASS input.type: IDL set to &quot;xhidden&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;xhidden&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;hidden\0&quot; should not throw 
+PASS input.type: IDL set to &quot;hidden\0&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;hidden\0&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;idden&quot; should not throw 
+PASS input.type: IDL set to &quot;idden&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;idden&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;HIDDEN&quot; should not throw 
+PASS input.type: IDL set to &quot;HIDDEN&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;HIDDEN&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;text&quot; should not throw 
+PASS input.type: IDL set to &quot;text&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;text&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;xtext&quot; should not throw 
+PASS input.type: IDL set to &quot;xtext&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;xtext&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;text\0&quot; should not throw 
+PASS input.type: IDL set to &quot;text\0&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;text\0&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;ext&quot; should not throw 
+PASS input.type: IDL set to &quot;ext&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;ext&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;TEXT&quot; should not throw 
+PASS input.type: IDL set to &quot;TEXT&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;TEXT&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;search&quot; should not throw 
+PASS input.type: IDL set to &quot;search&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;search&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;xsearch&quot; should not throw 
+PASS input.type: IDL set to &quot;xsearch&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;xsearch&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;search\0&quot; should not throw 
+PASS input.type: IDL set to &quot;search\0&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;search\0&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;earch&quot; should not throw 
+PASS input.type: IDL set to &quot;earch&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;earch&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;SEARCH&quot; should not throw 
+PASS input.type: IDL set to &quot;SEARCH&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;SEARCH&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;tel&quot; should not throw 
+PASS input.type: IDL set to &quot;tel&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;tel&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;xtel&quot; should not throw 
+PASS input.type: IDL set to &quot;xtel&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;xtel&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;tel\0&quot; should not throw 
+PASS input.type: IDL set to &quot;tel\0&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;tel\0&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;el&quot; should not throw 
+PASS input.type: IDL set to &quot;el&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;el&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;TEL&quot; should not throw 
+PASS input.type: IDL set to &quot;TEL&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;TEL&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;url&quot; should not throw 
+PASS input.type: IDL set to &quot;url&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;url&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;xurl&quot; should not throw 
+PASS input.type: IDL set to &quot;xurl&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;xurl&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;url\0&quot; should not throw 
+PASS input.type: IDL set to &quot;url\0&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;url\0&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;rl&quot; should not throw 
+PASS input.type: IDL set to &quot;rl&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;rl&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;URL&quot; should not throw 
+PASS input.type: IDL set to &quot;URL&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;URL&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;email&quot; should not throw 
+PASS input.type: IDL set to &quot;email&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;email&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;xemail&quot; should not throw 
+PASS input.type: IDL set to &quot;xemail&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;xemail&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;email\0&quot; should not throw 
+PASS input.type: IDL set to &quot;email\0&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;email\0&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;mail&quot; should not throw 
+PASS input.type: IDL set to &quot;mail&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;mail&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;EMAIL&quot; should not throw 
+PASS input.type: IDL set to &quot;EMAIL&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;EMAIL&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;password&quot; should not throw 
+PASS input.type: IDL set to &quot;password&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;password&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;xpassword&quot; should not throw 
+PASS input.type: IDL set to &quot;xpassword&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;xpassword&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;password\0&quot; should not throw 
+PASS input.type: IDL set to &quot;password\0&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;password\0&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;assword&quot; should not throw 
+PASS input.type: IDL set to &quot;assword&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;assword&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;PASSWORD&quot; should not throw 
+PASS input.type: IDL set to &quot;PASSWORD&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;PASSWORD&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;datetime&quot; should not throw 
+PASS input.type: IDL set to &quot;datetime&quot; followed by getAttribute() 
+FAIL input.type: IDL set to &quot;datetime&quot; followed by IDL get assert_equals: expected &quot;datetime&quot; but got &quot;text&quot;
+PASS input.type: IDL set to &quot;xdatetime&quot; should not throw 
+PASS input.type: IDL set to &quot;xdatetime&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;xdatetime&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;datetime\0&quot; should not throw 
+PASS input.type: IDL set to &quot;datetime\0&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;datetime\0&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;atetime&quot; should not throw 
+PASS input.type: IDL set to &quot;atetime&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;atetime&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;DATETIME&quot; should not throw 
+PASS input.type: IDL set to &quot;DATETIME&quot; followed by getAttribute() 
+FAIL input.type: IDL set to &quot;DATETIME&quot; followed by IDL get assert_equals: expected &quot;datetime&quot; but got &quot;text&quot;
+PASS input.type: IDL set to &quot;date&quot; should not throw 
+PASS input.type: IDL set to &quot;date&quot; followed by getAttribute() 
+FAIL input.type: IDL set to &quot;date&quot; followed by IDL get assert_equals: expected &quot;date&quot; but got &quot;text&quot;
+PASS input.type: IDL set to &quot;xdate&quot; should not throw 
+PASS input.type: IDL set to &quot;xdate&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;xdate&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;date\0&quot; should not throw 
+PASS input.type: IDL set to &quot;date\0&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;date\0&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;ate&quot; should not throw 
+PASS input.type: IDL set to &quot;ate&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;ate&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;DATE&quot; should not throw 
+PASS input.type: IDL set to &quot;DATE&quot; followed by getAttribute() 
+FAIL input.type: IDL set to &quot;DATE&quot; followed by IDL get assert_equals: expected &quot;date&quot; but got &quot;text&quot;
+PASS input.type: IDL set to &quot;month&quot; should not throw 
+PASS input.type: IDL set to &quot;month&quot; followed by getAttribute() 
+FAIL input.type: IDL set to &quot;month&quot; followed by IDL get assert_equals: expected &quot;month&quot; but got &quot;text&quot;
+PASS input.type: IDL set to &quot;xmonth&quot; should not throw 
+PASS input.type: IDL set to &quot;xmonth&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;xmonth&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;month\0&quot; should not throw 
+PASS input.type: IDL set to &quot;month\0&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;month\0&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;onth&quot; should not throw 
+PASS input.type: IDL set to &quot;onth&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;onth&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;MONTH&quot; should not throw 
+PASS input.type: IDL set to &quot;MONTH&quot; followed by getAttribute() 
+FAIL input.type: IDL set to &quot;MONTH&quot; followed by IDL get assert_equals: expected &quot;month&quot; but got &quot;text&quot;
+PASS input.type: IDL set to &quot;week&quot; should not throw 
+PASS input.type: IDL set to &quot;week&quot; followed by getAttribute() 
+FAIL input.type: IDL set to &quot;week&quot; followed by IDL get assert_equals: expected &quot;week&quot; but got &quot;text&quot;
+PASS input.type: IDL set to &quot;xweek&quot; should not throw 
+PASS input.type: IDL set to &quot;xweek&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;xweek&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;week\0&quot; should not throw 
+PASS input.type: IDL set to &quot;week\0&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;week\0&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;eek&quot; should not throw 
+PASS input.type: IDL set to &quot;eek&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;eek&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;WEEK&quot; should not throw 
+PASS input.type: IDL set to &quot;WEEK&quot; followed by getAttribute() 
+FAIL input.type: IDL set to &quot;WEEK&quot; followed by IDL get assert_equals: expected &quot;week&quot; but got &quot;text&quot;
+PASS input.type: IDL set to &quot;time&quot; should not throw 
+PASS input.type: IDL set to &quot;time&quot; followed by getAttribute() 
+FAIL input.type: IDL set to &quot;time&quot; followed by IDL get assert_equals: expected &quot;time&quot; but got &quot;text&quot;
+PASS input.type: IDL set to &quot;xtime&quot; should not throw 
+PASS input.type: IDL set to &quot;xtime&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;xtime&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;time\0&quot; should not throw 
+PASS input.type: IDL set to &quot;time\0&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;time\0&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;ime&quot; should not throw 
+PASS input.type: IDL set to &quot;ime&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;ime&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;TIME&quot; should not throw 
+PASS input.type: IDL set to &quot;TIME&quot; followed by getAttribute() 
+FAIL input.type: IDL set to &quot;TIME&quot; followed by IDL get assert_equals: expected &quot;time&quot; but got &quot;text&quot;
+PASS input.type: IDL set to &quot;datetime-local&quot; should not throw 
+PASS input.type: IDL set to &quot;datetime-local&quot; followed by getAttribute() 
+FAIL input.type: IDL set to &quot;datetime-local&quot; followed by IDL get assert_equals: expected &quot;datetime-local&quot; but got &quot;text&quot;
+PASS input.type: IDL set to &quot;xdatetime-local&quot; should not throw 
+PASS input.type: IDL set to &quot;xdatetime-local&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;xdatetime-local&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;datetime-local\0&quot; should not throw 
+PASS input.type: IDL set to &quot;datetime-local\0&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;datetime-local\0&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;atetime-local&quot; should not throw 
+PASS input.type: IDL set to &quot;atetime-local&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;atetime-local&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;DATETIME-LOCAL&quot; should not throw 
+PASS input.type: IDL set to &quot;DATETIME-LOCAL&quot; followed by getAttribute() 
+FAIL input.type: IDL set to &quot;DATETIME-LOCAL&quot; followed by IDL get assert_equals: expected &quot;datetime-local&quot; but got &quot;text&quot;
+PASS input.type: IDL set to &quot;number&quot; should not throw 
+PASS input.type: IDL set to &quot;number&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;number&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;xnumber&quot; should not throw 
+PASS input.type: IDL set to &quot;xnumber&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;xnumber&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;number\0&quot; should not throw 
+PASS input.type: IDL set to &quot;number\0&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;number\0&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;umber&quot; should not throw 
+PASS input.type: IDL set to &quot;umber&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;umber&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;NUMBER&quot; should not throw 
+PASS input.type: IDL set to &quot;NUMBER&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;NUMBER&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;range&quot; should not throw 
+PASS input.type: IDL set to &quot;range&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;range&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;xrange&quot; should not throw 
+PASS input.type: IDL set to &quot;xrange&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;xrange&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;range\0&quot; should not throw 
+PASS input.type: IDL set to &quot;range\0&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;range\0&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;ange&quot; should not throw 
+PASS input.type: IDL set to &quot;ange&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;ange&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;RANGE&quot; should not throw 
+PASS input.type: IDL set to &quot;RANGE&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;RANGE&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;color&quot; should not throw 
+PASS input.type: IDL set to &quot;color&quot; followed by getAttribute() 
+FAIL input.type: IDL set to &quot;color&quot; followed by IDL get assert_equals: expected &quot;color&quot; but got &quot;text&quot;
+PASS input.type: IDL set to &quot;xcolor&quot; should not throw 
+PASS input.type: IDL set to &quot;xcolor&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;xcolor&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;color\0&quot; should not throw 
+PASS input.type: IDL set to &quot;color\0&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;color\0&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;olor&quot; should not throw 
+PASS input.type: IDL set to &quot;olor&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;olor&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;COLOR&quot; should not throw 
+PASS input.type: IDL set to &quot;COLOR&quot; followed by getAttribute() 
+FAIL input.type: IDL set to &quot;COLOR&quot; followed by IDL get assert_equals: expected &quot;color&quot; but got &quot;text&quot;
+PASS input.type: IDL set to &quot;checkbox&quot; should not throw 
+PASS input.type: IDL set to &quot;checkbox&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;checkbox&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;xcheckbox&quot; should not throw 
+PASS input.type: IDL set to &quot;xcheckbox&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;xcheckbox&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;checkbox\0&quot; should not throw 
+PASS input.type: IDL set to &quot;checkbox\0&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;checkbox\0&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;heckbox&quot; should not throw 
+PASS input.type: IDL set to &quot;heckbox&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;heckbox&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;CHECKBOX&quot; should not throw 
+PASS input.type: IDL set to &quot;CHECKBOX&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;CHECKBOX&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;radio&quot; should not throw 
+PASS input.type: IDL set to &quot;radio&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;radio&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;xradio&quot; should not throw 
+PASS input.type: IDL set to &quot;xradio&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;xradio&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;radio\0&quot; should not throw 
+PASS input.type: IDL set to &quot;radio\0&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;radio\0&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;adio&quot; should not throw 
+PASS input.type: IDL set to &quot;adio&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;adio&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;RADIO&quot; should not throw 
+PASS input.type: IDL set to &quot;RADIO&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;RADIO&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;file&quot; should not throw 
+FAIL input.type: IDL set to &quot;file&quot; followed by getAttribute() assert_equals: expected &quot;file&quot; but got &quot;radio&quot;
+FAIL input.type: IDL set to &quot;file&quot; followed by IDL get assert_equals: expected &quot;file&quot; but got &quot;radio&quot;
+PASS input.type: IDL set to &quot;xfile&quot; should not throw 
+PASS input.type: IDL set to &quot;xfile&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;xfile&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;file\0&quot; should not throw 
+PASS input.type: IDL set to &quot;file\0&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;file\0&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;ile&quot; should not throw 
+PASS input.type: IDL set to &quot;ile&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;ile&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;FILE&quot; should not throw 
+FAIL input.type: IDL set to &quot;FILE&quot; followed by getAttribute() assert_equals: expected &quot;FILE&quot; but got &quot;text&quot;
+FAIL input.type: IDL set to &quot;FILE&quot; followed by IDL get assert_equals: expected &quot;file&quot; but got &quot;text&quot;
+PASS input.type: IDL set to &quot;submit&quot; should not throw 
+PASS input.type: IDL set to &quot;submit&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;submit&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;xsubmit&quot; should not throw 
+PASS input.type: IDL set to &quot;xsubmit&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;xsubmit&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;submit\0&quot; should not throw 
+PASS input.type: IDL set to &quot;submit\0&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;submit\0&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;ubmit&quot; should not throw 
+PASS input.type: IDL set to &quot;ubmit&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;ubmit&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;SUBMIT&quot; should not throw 
+PASS input.type: IDL set to &quot;SUBMIT&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;SUBMIT&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;image&quot; should not throw 
+PASS input.type: IDL set to &quot;image&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;image&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;ximage&quot; should not throw 
+PASS input.type: IDL set to &quot;ximage&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;ximage&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;image\0&quot; should not throw 
+PASS input.type: IDL set to &quot;image\0&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;image\0&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;mage&quot; should not throw 
+PASS input.type: IDL set to &quot;mage&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;mage&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;IMAGE&quot; should not throw 
+PASS input.type: IDL set to &quot;IMAGE&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;IMAGE&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;reset&quot; should not throw 
+PASS input.type: IDL set to &quot;reset&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;reset&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;xreset&quot; should not throw 
+PASS input.type: IDL set to &quot;xreset&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;xreset&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;reset\0&quot; should not throw 
+PASS input.type: IDL set to &quot;reset\0&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;reset\0&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;eset&quot; should not throw 
+PASS input.type: IDL set to &quot;eset&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;eset&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;RESET&quot; should not throw 
+PASS input.type: IDL set to &quot;RESET&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;RESET&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;button&quot; should not throw 
+PASS input.type: IDL set to &quot;button&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;button&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;xbutton&quot; should not throw 
+PASS input.type: IDL set to &quot;xbutton&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;xbutton&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;button\0&quot; should not throw 
+PASS input.type: IDL set to &quot;button\0&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;button\0&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;utton&quot; should not throw 
+PASS input.type: IDL set to &quot;utton&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;utton&quot; followed by IDL get 
+PASS input.type: IDL set to &quot;BUTTON&quot; should not throw 
+PASS input.type: IDL set to &quot;BUTTON&quot; followed by getAttribute() 
+PASS input.type: IDL set to &quot;BUTTON&quot; followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): typeof IDL attribute 
+PASS input.defaultValue (&lt;input value&gt;): IDL get with DOM attribute unset 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to undefined followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to undefined followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to 7 followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to 7 followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to 1.5 followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to 1.5 followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to true followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to true followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to false followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to false followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to NaN followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to NaN followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to Infinity followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to Infinity followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to -Infinity followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to -Infinity followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to null followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to null followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to &quot;&quot; should not throw 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to &quot;&quot; followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to &quot;&quot; followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to undefined should not throw 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to undefined followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to undefined followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to 7 should not throw 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to 7 followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to 7 followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to 1.5 should not throw 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to 1.5 followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to 1.5 followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to true should not throw 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to true followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to true followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to false should not throw 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to false followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to false followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to NaN should not throw 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to NaN followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to NaN followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to Infinity should not throw 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to Infinity followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to Infinity followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to -Infinity should not throw 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to -Infinity followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to -Infinity followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to &quot;\0&quot; should not throw 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to null should not throw 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to null followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to null followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.defaultValue (&lt;input value&gt;): IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.align: typeof IDL attribute 
+PASS input.align: IDL get with DOM attribute unset 
+PASS input.align: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.align: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.align: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.align: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.align: setAttribute() to undefined followed by getAttribute() 
+PASS input.align: setAttribute() to undefined followed by IDL get 
+PASS input.align: setAttribute() to 7 followed by getAttribute() 
+PASS input.align: setAttribute() to 7 followed by IDL get 
+PASS input.align: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.align: setAttribute() to 1.5 followed by IDL get 
+PASS input.align: setAttribute() to true followed by getAttribute() 
+PASS input.align: setAttribute() to true followed by IDL get 
+PASS input.align: setAttribute() to false followed by getAttribute() 
+PASS input.align: setAttribute() to false followed by IDL get 
+PASS input.align: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.align: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.align: setAttribute() to NaN followed by getAttribute() 
+PASS input.align: setAttribute() to NaN followed by IDL get 
+PASS input.align: setAttribute() to Infinity followed by getAttribute() 
+PASS input.align: setAttribute() to Infinity followed by IDL get 
+PASS input.align: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.align: setAttribute() to -Infinity followed by IDL get 
+PASS input.align: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.align: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.align: setAttribute() to null followed by getAttribute() 
+PASS input.align: setAttribute() to null followed by IDL get 
+PASS input.align: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.align: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.align: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.align: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.align: IDL set to &quot;&quot; should not throw 
+PASS input.align: IDL set to &quot;&quot; followed by getAttribute() 
+PASS input.align: IDL set to &quot;&quot; followed by IDL get 
+PASS input.align: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS input.align: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.align: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.align: IDL set to undefined should not throw 
+PASS input.align: IDL set to undefined followed by getAttribute() 
+PASS input.align: IDL set to undefined followed by IDL get 
+PASS input.align: IDL set to 7 should not throw 
+PASS input.align: IDL set to 7 followed by getAttribute() 
+PASS input.align: IDL set to 7 followed by IDL get 
+PASS input.align: IDL set to 1.5 should not throw 
+PASS input.align: IDL set to 1.5 followed by getAttribute() 
+PASS input.align: IDL set to 1.5 followed by IDL get 
+PASS input.align: IDL set to true should not throw 
+PASS input.align: IDL set to true followed by getAttribute() 
+PASS input.align: IDL set to true followed by IDL get 
+PASS input.align: IDL set to false should not throw 
+PASS input.align: IDL set to false followed by getAttribute() 
+PASS input.align: IDL set to false followed by IDL get 
+PASS input.align: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.align: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.align: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.align: IDL set to NaN should not throw 
+PASS input.align: IDL set to NaN followed by getAttribute() 
+PASS input.align: IDL set to NaN followed by IDL get 
+PASS input.align: IDL set to Infinity should not throw 
+PASS input.align: IDL set to Infinity followed by getAttribute() 
+PASS input.align: IDL set to Infinity followed by IDL get 
+PASS input.align: IDL set to -Infinity should not throw 
+PASS input.align: IDL set to -Infinity followed by getAttribute() 
+PASS input.align: IDL set to -Infinity followed by IDL get 
+PASS input.align: IDL set to &quot;\0&quot; should not throw 
+PASS input.align: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS input.align: IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.align: IDL set to null should not throw 
+PASS input.align: IDL set to null followed by getAttribute() 
+PASS input.align: IDL set to null followed by IDL get 
+PASS input.align: IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.align: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.align: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.align: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.align: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.align: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.useMap: typeof IDL attribute 
+PASS input.useMap: IDL get with DOM attribute unset 
+PASS input.useMap: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS input.useMap: setAttribute() to &quot;&quot; followed by IDL get 
+PASS input.useMap: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.useMap: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.useMap: setAttribute() to undefined followed by getAttribute() 
+PASS input.useMap: setAttribute() to undefined followed by IDL get 
+PASS input.useMap: setAttribute() to 7 followed by getAttribute() 
+PASS input.useMap: setAttribute() to 7 followed by IDL get 
+PASS input.useMap: setAttribute() to 1.5 followed by getAttribute() 
+PASS input.useMap: setAttribute() to 1.5 followed by IDL get 
+PASS input.useMap: setAttribute() to true followed by getAttribute() 
+PASS input.useMap: setAttribute() to true followed by IDL get 
+PASS input.useMap: setAttribute() to false followed by getAttribute() 
+PASS input.useMap: setAttribute() to false followed by IDL get 
+PASS input.useMap: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.useMap: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.useMap: setAttribute() to NaN followed by getAttribute() 
+PASS input.useMap: setAttribute() to NaN followed by IDL get 
+PASS input.useMap: setAttribute() to Infinity followed by getAttribute() 
+PASS input.useMap: setAttribute() to Infinity followed by IDL get 
+PASS input.useMap: setAttribute() to -Infinity followed by getAttribute() 
+PASS input.useMap: setAttribute() to -Infinity followed by IDL get 
+PASS input.useMap: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS input.useMap: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS input.useMap: setAttribute() to null followed by getAttribute() 
+PASS input.useMap: setAttribute() to null followed by IDL get 
+PASS input.useMap: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.useMap: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS input.useMap: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.useMap: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS input.useMap: IDL set to &quot;&quot; should not throw 
+PASS input.useMap: IDL set to &quot;&quot; followed by getAttribute() 
+PASS input.useMap: IDL set to &quot;&quot; followed by IDL get 
+PASS input.useMap: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS input.useMap: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS input.useMap: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS input.useMap: IDL set to undefined should not throw 
+PASS input.useMap: IDL set to undefined followed by getAttribute() 
+PASS input.useMap: IDL set to undefined followed by IDL get 
+PASS input.useMap: IDL set to 7 should not throw 
+PASS input.useMap: IDL set to 7 followed by getAttribute() 
+PASS input.useMap: IDL set to 7 followed by IDL get 
+PASS input.useMap: IDL set to 1.5 should not throw 
+PASS input.useMap: IDL set to 1.5 followed by getAttribute() 
+PASS input.useMap: IDL set to 1.5 followed by IDL get 
+PASS input.useMap: IDL set to true should not throw 
+PASS input.useMap: IDL set to true followed by getAttribute() 
+PASS input.useMap: IDL set to true followed by IDL get 
+PASS input.useMap: IDL set to false should not throw 
+PASS input.useMap: IDL set to false followed by getAttribute() 
+PASS input.useMap: IDL set to false followed by IDL get 
+PASS input.useMap: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS input.useMap: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS input.useMap: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS input.useMap: IDL set to NaN should not throw 
+PASS input.useMap: IDL set to NaN followed by getAttribute() 
+PASS input.useMap: IDL set to NaN followed by IDL get 
+PASS input.useMap: IDL set to Infinity should not throw 
+PASS input.useMap: IDL set to Infinity followed by getAttribute() 
+PASS input.useMap: IDL set to Infinity followed by IDL get 
+PASS input.useMap: IDL set to -Infinity should not throw 
+PASS input.useMap: IDL set to -Infinity followed by getAttribute() 
+PASS input.useMap: IDL set to -Infinity followed by IDL get 
+PASS input.useMap: IDL set to &quot;\0&quot; should not throw 
+PASS input.useMap: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS input.useMap: IDL set to &quot;\0&quot; followed by IDL get 
+PASS input.useMap: IDL set to null should not throw 
+PASS input.useMap: IDL set to null followed by getAttribute() 
+PASS input.useMap: IDL set to null followed by IDL get 
+PASS input.useMap: IDL set to object &quot;test-toString&quot; should not throw 
+PASS input.useMap: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS input.useMap: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS input.useMap: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS input.useMap: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS input.useMap: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.title: typeof IDL attribute 
+PASS button.title: IDL get with DOM attribute unset 
+PASS button.title: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS button.title: setAttribute() to &quot;&quot; followed by IDL get 
+PASS button.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS button.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS button.title: setAttribute() to undefined followed by getAttribute() 
+PASS button.title: setAttribute() to undefined followed by IDL get 
+PASS button.title: setAttribute() to 7 followed by getAttribute() 
+PASS button.title: setAttribute() to 7 followed by IDL get 
+PASS button.title: setAttribute() to 1.5 followed by getAttribute() 
+PASS button.title: setAttribute() to 1.5 followed by IDL get 
+PASS button.title: setAttribute() to true followed by getAttribute() 
+PASS button.title: setAttribute() to true followed by IDL get 
+PASS button.title: setAttribute() to false followed by getAttribute() 
+PASS button.title: setAttribute() to false followed by IDL get 
+PASS button.title: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS button.title: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.title: setAttribute() to NaN followed by getAttribute() 
+PASS button.title: setAttribute() to NaN followed by IDL get 
+PASS button.title: setAttribute() to Infinity followed by getAttribute() 
+PASS button.title: setAttribute() to Infinity followed by IDL get 
+PASS button.title: setAttribute() to -Infinity followed by getAttribute() 
+PASS button.title: setAttribute() to -Infinity followed by IDL get 
+PASS button.title: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS button.title: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS button.title: setAttribute() to null followed by getAttribute() 
+PASS button.title: setAttribute() to null followed by IDL get 
+PASS button.title: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS button.title: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS button.title: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS button.title: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.title: IDL set to &quot;&quot; should not throw 
+PASS button.title: IDL set to &quot;&quot; followed by getAttribute() 
+PASS button.title: IDL set to &quot;&quot; followed by IDL get 
+PASS button.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS button.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS button.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS button.title: IDL set to undefined should not throw 
+PASS button.title: IDL set to undefined followed by getAttribute() 
+PASS button.title: IDL set to undefined followed by IDL get 
+PASS button.title: IDL set to 7 should not throw 
+PASS button.title: IDL set to 7 followed by getAttribute() 
+PASS button.title: IDL set to 7 followed by IDL get 
+PASS button.title: IDL set to 1.5 should not throw 
+PASS button.title: IDL set to 1.5 followed by getAttribute() 
+PASS button.title: IDL set to 1.5 followed by IDL get 
+PASS button.title: IDL set to true should not throw 
+PASS button.title: IDL set to true followed by getAttribute() 
+PASS button.title: IDL set to true followed by IDL get 
+PASS button.title: IDL set to false should not throw 
+PASS button.title: IDL set to false followed by getAttribute() 
+PASS button.title: IDL set to false followed by IDL get 
+PASS button.title: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS button.title: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS button.title: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.title: IDL set to NaN should not throw 
+PASS button.title: IDL set to NaN followed by getAttribute() 
+PASS button.title: IDL set to NaN followed by IDL get 
+PASS button.title: IDL set to Infinity should not throw 
+PASS button.title: IDL set to Infinity followed by getAttribute() 
+PASS button.title: IDL set to Infinity followed by IDL get 
+PASS button.title: IDL set to -Infinity should not throw 
+PASS button.title: IDL set to -Infinity followed by getAttribute() 
+PASS button.title: IDL set to -Infinity followed by IDL get 
+PASS button.title: IDL set to &quot;\0&quot; should not throw 
+PASS button.title: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS button.title: IDL set to &quot;\0&quot; followed by IDL get 
+PASS button.title: IDL set to null should not throw 
+PASS button.title: IDL set to null followed by getAttribute() 
+PASS button.title: IDL set to null followed by IDL get 
+PASS button.title: IDL set to object &quot;test-toString&quot; should not throw 
+PASS button.title: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS button.title: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS button.title: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS button.title: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS button.title: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.lang: typeof IDL attribute 
+PASS button.lang: IDL get with DOM attribute unset 
+PASS button.lang: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS button.lang: setAttribute() to &quot;&quot; followed by IDL get 
+PASS button.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS button.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS button.lang: setAttribute() to undefined followed by getAttribute() 
+PASS button.lang: setAttribute() to undefined followed by IDL get 
+PASS button.lang: setAttribute() to 7 followed by getAttribute() 
+PASS button.lang: setAttribute() to 7 followed by IDL get 
+PASS button.lang: setAttribute() to 1.5 followed by getAttribute() 
+PASS button.lang: setAttribute() to 1.5 followed by IDL get 
+PASS button.lang: setAttribute() to true followed by getAttribute() 
+PASS button.lang: setAttribute() to true followed by IDL get 
+PASS button.lang: setAttribute() to false followed by getAttribute() 
+PASS button.lang: setAttribute() to false followed by IDL get 
+PASS button.lang: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS button.lang: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.lang: setAttribute() to NaN followed by getAttribute() 
+PASS button.lang: setAttribute() to NaN followed by IDL get 
+PASS button.lang: setAttribute() to Infinity followed by getAttribute() 
+PASS button.lang: setAttribute() to Infinity followed by IDL get 
+PASS button.lang: setAttribute() to -Infinity followed by getAttribute() 
+PASS button.lang: setAttribute() to -Infinity followed by IDL get 
+PASS button.lang: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS button.lang: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS button.lang: setAttribute() to null followed by getAttribute() 
+PASS button.lang: setAttribute() to null followed by IDL get 
+PASS button.lang: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS button.lang: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS button.lang: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS button.lang: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.lang: IDL set to &quot;&quot; should not throw 
+PASS button.lang: IDL set to &quot;&quot; followed by getAttribute() 
+PASS button.lang: IDL set to &quot;&quot; followed by IDL get 
+PASS button.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS button.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS button.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS button.lang: IDL set to undefined should not throw 
+PASS button.lang: IDL set to undefined followed by getAttribute() 
+PASS button.lang: IDL set to undefined followed by IDL get 
+PASS button.lang: IDL set to 7 should not throw 
+PASS button.lang: IDL set to 7 followed by getAttribute() 
+PASS button.lang: IDL set to 7 followed by IDL get 
+PASS button.lang: IDL set to 1.5 should not throw 
+PASS button.lang: IDL set to 1.5 followed by getAttribute() 
+PASS button.lang: IDL set to 1.5 followed by IDL get 
+PASS button.lang: IDL set to true should not throw 
+PASS button.lang: IDL set to true followed by getAttribute() 
+PASS button.lang: IDL set to true followed by IDL get 
+PASS button.lang: IDL set to false should not throw 
+PASS button.lang: IDL set to false followed by getAttribute() 
+PASS button.lang: IDL set to false followed by IDL get 
+PASS button.lang: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS button.lang: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS button.lang: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.lang: IDL set to NaN should not throw 
+PASS button.lang: IDL set to NaN followed by getAttribute() 
+PASS button.lang: IDL set to NaN followed by IDL get 
+PASS button.lang: IDL set to Infinity should not throw 
+PASS button.lang: IDL set to Infinity followed by getAttribute() 
+PASS button.lang: IDL set to Infinity followed by IDL get 
+PASS button.lang: IDL set to -Infinity should not throw 
+PASS button.lang: IDL set to -Infinity followed by getAttribute() 
+PASS button.lang: IDL set to -Infinity followed by IDL get 
+PASS button.lang: IDL set to &quot;\0&quot; should not throw 
+PASS button.lang: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS button.lang: IDL set to &quot;\0&quot; followed by IDL get 
+PASS button.lang: IDL set to null should not throw 
+PASS button.lang: IDL set to null followed by getAttribute() 
+PASS button.lang: IDL set to null followed by IDL get 
+PASS button.lang: IDL set to object &quot;test-toString&quot; should not throw 
+PASS button.lang: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS button.lang: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS button.lang: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS button.lang: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS button.lang: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.dir: typeof IDL attribute 
+PASS button.dir: IDL get with DOM attribute unset 
+PASS button.dir: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS button.dir: setAttribute() to &quot;&quot; followed by IDL get 
+PASS button.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS button.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS button.dir: setAttribute() to undefined followed by getAttribute() 
+PASS button.dir: setAttribute() to undefined followed by IDL get 
+PASS button.dir: setAttribute() to 7 followed by getAttribute() 
+PASS button.dir: setAttribute() to 7 followed by IDL get 
+PASS button.dir: setAttribute() to 1.5 followed by getAttribute() 
+PASS button.dir: setAttribute() to 1.5 followed by IDL get 
+PASS button.dir: setAttribute() to true followed by getAttribute() 
+PASS button.dir: setAttribute() to true followed by IDL get 
+PASS button.dir: setAttribute() to false followed by getAttribute() 
+PASS button.dir: setAttribute() to false followed by IDL get 
+PASS button.dir: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS button.dir: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.dir: setAttribute() to NaN followed by getAttribute() 
+PASS button.dir: setAttribute() to NaN followed by IDL get 
+PASS button.dir: setAttribute() to Infinity followed by getAttribute() 
+PASS button.dir: setAttribute() to Infinity followed by IDL get 
+PASS button.dir: setAttribute() to -Infinity followed by getAttribute() 
+PASS button.dir: setAttribute() to -Infinity followed by IDL get 
+PASS button.dir: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS button.dir: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS button.dir: setAttribute() to null followed by getAttribute() 
+PASS button.dir: setAttribute() to null followed by IDL get 
+PASS button.dir: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS button.dir: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS button.dir: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS button.dir: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.dir: setAttribute() to &quot;ltr&quot; followed by getAttribute() 
+PASS button.dir: setAttribute() to &quot;ltr&quot; followed by IDL get 
+PASS button.dir: setAttribute() to &quot;xltr&quot; followed by getAttribute() 
+PASS button.dir: setAttribute() to &quot;xltr&quot; followed by IDL get 
+PASS button.dir: setAttribute() to &quot;ltr\0&quot; followed by getAttribute() 
+PASS button.dir: setAttribute() to &quot;ltr\0&quot; followed by IDL get 
+PASS button.dir: setAttribute() to &quot;tr&quot; followed by getAttribute() 
+PASS button.dir: setAttribute() to &quot;tr&quot; followed by IDL get 
+PASS button.dir: setAttribute() to &quot;LTR&quot; followed by getAttribute() 
+PASS button.dir: setAttribute() to &quot;LTR&quot; followed by IDL get 
+PASS button.dir: setAttribute() to &quot;rtl&quot; followed by getAttribute() 
+PASS button.dir: setAttribute() to &quot;rtl&quot; followed by IDL get 
+PASS button.dir: setAttribute() to &quot;xrtl&quot; followed by getAttribute() 
+PASS button.dir: setAttribute() to &quot;xrtl&quot; followed by IDL get 
+PASS button.dir: setAttribute() to &quot;rtl\0&quot; followed by getAttribute() 
+PASS button.dir: setAttribute() to &quot;rtl\0&quot; followed by IDL get 
+PASS button.dir: setAttribute() to &quot;tl&quot; followed by getAttribute() 
+PASS button.dir: setAttribute() to &quot;tl&quot; followed by IDL get 
+PASS button.dir: setAttribute() to &quot;RTL&quot; followed by getAttribute() 
+PASS button.dir: setAttribute() to &quot;RTL&quot; followed by IDL get 
+PASS button.dir: setAttribute() to &quot;auto&quot; followed by getAttribute() 
+PASS button.dir: setAttribute() to &quot;auto&quot; followed by IDL get 
+PASS button.dir: setAttribute() to &quot;xauto&quot; followed by getAttribute() 
+PASS button.dir: setAttribute() to &quot;xauto&quot; followed by IDL get 
+PASS button.dir: setAttribute() to &quot;auto\0&quot; followed by getAttribute() 
+PASS button.dir: setAttribute() to &quot;auto\0&quot; followed by IDL get 
+PASS button.dir: setAttribute() to &quot;uto&quot; followed by getAttribute() 
+PASS button.dir: setAttribute() to &quot;uto&quot; followed by IDL get 
+PASS button.dir: setAttribute() to &quot;AUTO&quot; followed by getAttribute() 
+PASS button.dir: setAttribute() to &quot;AUTO&quot; followed by IDL get 
+PASS button.dir: IDL set to &quot;&quot; should not throw 
+PASS button.dir: IDL set to &quot;&quot; followed by getAttribute() 
+PASS button.dir: IDL set to &quot;&quot; followed by IDL get 
+PASS button.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS button.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS button.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS button.dir: IDL set to undefined should not throw 
+PASS button.dir: IDL set to undefined followed by getAttribute() 
+PASS button.dir: IDL set to undefined followed by IDL get 
+PASS button.dir: IDL set to 7 should not throw 
+PASS button.dir: IDL set to 7 followed by getAttribute() 
+PASS button.dir: IDL set to 7 followed by IDL get 
+PASS button.dir: IDL set to 1.5 should not throw 
+PASS button.dir: IDL set to 1.5 followed by getAttribute() 
+PASS button.dir: IDL set to 1.5 followed by IDL get 
+PASS button.dir: IDL set to true should not throw 
+PASS button.dir: IDL set to true followed by getAttribute() 
+PASS button.dir: IDL set to true followed by IDL get 
+PASS button.dir: IDL set to false should not throw 
+PASS button.dir: IDL set to false followed by getAttribute() 
+PASS button.dir: IDL set to false followed by IDL get 
+PASS button.dir: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS button.dir: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS button.dir: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.dir: IDL set to NaN should not throw 
+PASS button.dir: IDL set to NaN followed by getAttribute() 
+PASS button.dir: IDL set to NaN followed by IDL get 
+PASS button.dir: IDL set to Infinity should not throw 
+PASS button.dir: IDL set to Infinity followed by getAttribute() 
+PASS button.dir: IDL set to Infinity followed by IDL get 
+PASS button.dir: IDL set to -Infinity should not throw 
+PASS button.dir: IDL set to -Infinity followed by getAttribute() 
+PASS button.dir: IDL set to -Infinity followed by IDL get 
+PASS button.dir: IDL set to &quot;\0&quot; should not throw 
+PASS button.dir: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS button.dir: IDL set to &quot;\0&quot; followed by IDL get 
+PASS button.dir: IDL set to null should not throw 
+PASS button.dir: IDL set to null followed by IDL get 
+PASS button.dir: IDL set to object &quot;test-toString&quot; should not throw 
+PASS button.dir: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS button.dir: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS button.dir: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS button.dir: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS button.dir: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.dir: IDL set to &quot;ltr&quot; should not throw 
+PASS button.dir: IDL set to &quot;ltr&quot; followed by getAttribute() 
+PASS button.dir: IDL set to &quot;ltr&quot; followed by IDL get 
+PASS button.dir: IDL set to &quot;xltr&quot; should not throw 
+PASS button.dir: IDL set to &quot;xltr&quot; followed by getAttribute() 
+PASS button.dir: IDL set to &quot;xltr&quot; followed by IDL get 
+PASS button.dir: IDL set to &quot;ltr\0&quot; should not throw 
+PASS button.dir: IDL set to &quot;ltr\0&quot; followed by getAttribute() 
+PASS button.dir: IDL set to &quot;ltr\0&quot; followed by IDL get 
+PASS button.dir: IDL set to &quot;tr&quot; should not throw 
+PASS button.dir: IDL set to &quot;tr&quot; followed by getAttribute() 
+PASS button.dir: IDL set to &quot;tr&quot; followed by IDL get 
+PASS button.dir: IDL set to &quot;LTR&quot; should not throw 
+PASS button.dir: IDL set to &quot;LTR&quot; followed by getAttribute() 
+PASS button.dir: IDL set to &quot;LTR&quot; followed by IDL get 
+PASS button.dir: IDL set to &quot;rtl&quot; should not throw 
+PASS button.dir: IDL set to &quot;rtl&quot; followed by getAttribute() 
+PASS button.dir: IDL set to &quot;rtl&quot; followed by IDL get 
+PASS button.dir: IDL set to &quot;xrtl&quot; should not throw 
+PASS button.dir: IDL set to &quot;xrtl&quot; followed by getAttribute() 
+PASS button.dir: IDL set to &quot;xrtl&quot; followed by IDL get 
+PASS button.dir: IDL set to &quot;rtl\0&quot; should not throw 
+PASS button.dir: IDL set to &quot;rtl\0&quot; followed by getAttribute() 
+PASS button.dir: IDL set to &quot;rtl\0&quot; followed by IDL get 
+PASS button.dir: IDL set to &quot;tl&quot; should not throw 
+PASS button.dir: IDL set to &quot;tl&quot; followed by getAttribute() 
+PASS button.dir: IDL set to &quot;tl&quot; followed by IDL get 
+PASS button.dir: IDL set to &quot;RTL&quot; should not throw 
+PASS button.dir: IDL set to &quot;RTL&quot; followed by getAttribute() 
+PASS button.dir: IDL set to &quot;RTL&quot; followed by IDL get 
+PASS button.dir: IDL set to &quot;auto&quot; should not throw 
+PASS button.dir: IDL set to &quot;auto&quot; followed by getAttribute() 
+PASS button.dir: IDL set to &quot;auto&quot; followed by IDL get 
+PASS button.dir: IDL set to &quot;xauto&quot; should not throw 
+PASS button.dir: IDL set to &quot;xauto&quot; followed by getAttribute() 
+PASS button.dir: IDL set to &quot;xauto&quot; followed by IDL get 
+PASS button.dir: IDL set to &quot;auto\0&quot; should not throw 
+PASS button.dir: IDL set to &quot;auto\0&quot; followed by getAttribute() 
+PASS button.dir: IDL set to &quot;auto\0&quot; followed by IDL get 
+PASS button.dir: IDL set to &quot;uto&quot; should not throw 
+PASS button.dir: IDL set to &quot;uto&quot; followed by getAttribute() 
+PASS button.dir: IDL set to &quot;uto&quot; followed by IDL get 
+PASS button.dir: IDL set to &quot;AUTO&quot; should not throw 
+PASS button.dir: IDL set to &quot;AUTO&quot; followed by getAttribute() 
+PASS button.dir: IDL set to &quot;AUTO&quot; followed by IDL get 
+PASS button.className (&lt;button class&gt;): typeof IDL attribute 
+PASS button.className (&lt;button class&gt;): IDL get with DOM attribute unset 
+PASS button.className (&lt;button class&gt;): setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): setAttribute() to &quot;&quot; followed by IDL get 
+PASS button.className (&lt;button class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS button.className (&lt;button class&gt;): setAttribute() to undefined followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): setAttribute() to undefined followed by IDL get 
+PASS button.className (&lt;button class&gt;): setAttribute() to 7 followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): setAttribute() to 7 followed by IDL get 
+PASS button.className (&lt;button class&gt;): setAttribute() to 1.5 followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): setAttribute() to 1.5 followed by IDL get 
+PASS button.className (&lt;button class&gt;): setAttribute() to true followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): setAttribute() to true followed by IDL get 
+PASS button.className (&lt;button class&gt;): setAttribute() to false followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): setAttribute() to false followed by IDL get 
+PASS button.className (&lt;button class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.className (&lt;button class&gt;): setAttribute() to NaN followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): setAttribute() to NaN followed by IDL get 
+PASS button.className (&lt;button class&gt;): setAttribute() to Infinity followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): setAttribute() to Infinity followed by IDL get 
+PASS button.className (&lt;button class&gt;): setAttribute() to -Infinity followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): setAttribute() to -Infinity followed by IDL get 
+PASS button.className (&lt;button class&gt;): setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS button.className (&lt;button class&gt;): setAttribute() to null followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): setAttribute() to null followed by IDL get 
+PASS button.className (&lt;button class&gt;): setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS button.className (&lt;button class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.className (&lt;button class&gt;): IDL set to &quot;&quot; should not throw 
+PASS button.className (&lt;button class&gt;): IDL set to &quot;&quot; followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): IDL set to &quot;&quot; followed by IDL get 
+PASS button.className (&lt;button class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS button.className (&lt;button class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS button.className (&lt;button class&gt;): IDL set to undefined should not throw 
+PASS button.className (&lt;button class&gt;): IDL set to undefined followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): IDL set to undefined followed by IDL get 
+PASS button.className (&lt;button class&gt;): IDL set to 7 should not throw 
+PASS button.className (&lt;button class&gt;): IDL set to 7 followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): IDL set to 7 followed by IDL get 
+PASS button.className (&lt;button class&gt;): IDL set to 1.5 should not throw 
+PASS button.className (&lt;button class&gt;): IDL set to 1.5 followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): IDL set to 1.5 followed by IDL get 
+PASS button.className (&lt;button class&gt;): IDL set to true should not throw 
+PASS button.className (&lt;button class&gt;): IDL set to true followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): IDL set to true followed by IDL get 
+PASS button.className (&lt;button class&gt;): IDL set to false should not throw 
+PASS button.className (&lt;button class&gt;): IDL set to false followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): IDL set to false followed by IDL get 
+PASS button.className (&lt;button class&gt;): IDL set to object &quot;[object Object]&quot; should not throw 
+PASS button.className (&lt;button class&gt;): IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.className (&lt;button class&gt;): IDL set to NaN should not throw 
+PASS button.className (&lt;button class&gt;): IDL set to NaN followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): IDL set to NaN followed by IDL get 
+PASS button.className (&lt;button class&gt;): IDL set to Infinity should not throw 
+PASS button.className (&lt;button class&gt;): IDL set to Infinity followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): IDL set to Infinity followed by IDL get 
+PASS button.className (&lt;button class&gt;): IDL set to -Infinity should not throw 
+PASS button.className (&lt;button class&gt;): IDL set to -Infinity followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): IDL set to -Infinity followed by IDL get 
+PASS button.className (&lt;button class&gt;): IDL set to &quot;\0&quot; should not throw 
+PASS button.className (&lt;button class&gt;): IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): IDL set to &quot;\0&quot; followed by IDL get 
+PASS button.className (&lt;button class&gt;): IDL set to null should not throw 
+PASS button.className (&lt;button class&gt;): IDL set to null followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): IDL set to null followed by IDL get 
+PASS button.className (&lt;button class&gt;): IDL set to object &quot;test-toString&quot; should not throw 
+PASS button.className (&lt;button class&gt;): IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS button.className (&lt;button class&gt;): IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS button.className (&lt;button class&gt;): IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS button.className (&lt;button class&gt;): IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.hidden: typeof IDL attribute 
+PASS button.hidden: IDL get with DOM attribute unset 
+PASS button.hidden: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS button.hidden: setAttribute() to &quot;&quot; followed by IDL get 
+PASS button.hidden: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS button.hidden: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS button.hidden: setAttribute() to undefined followed by getAttribute() 
+PASS button.hidden: setAttribute() to undefined followed by IDL get 
+PASS button.hidden: setAttribute() to null followed by getAttribute() 
+PASS button.hidden: setAttribute() to null followed by IDL get 
+PASS button.hidden: setAttribute() to 7 followed by getAttribute() 
+PASS button.hidden: setAttribute() to 7 followed by IDL get 
+PASS button.hidden: setAttribute() to 1.5 followed by getAttribute() 
+PASS button.hidden: setAttribute() to 1.5 followed by IDL get 
+PASS button.hidden: setAttribute() to true followed by getAttribute() 
+PASS button.hidden: setAttribute() to true followed by IDL get 
+PASS button.hidden: setAttribute() to false followed by getAttribute() 
+PASS button.hidden: setAttribute() to false followed by IDL get 
+PASS button.hidden: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS button.hidden: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.hidden: setAttribute() to NaN followed by getAttribute() 
+PASS button.hidden: setAttribute() to NaN followed by IDL get 
+PASS button.hidden: setAttribute() to Infinity followed by getAttribute() 
+PASS button.hidden: setAttribute() to Infinity followed by IDL get 
+PASS button.hidden: setAttribute() to -Infinity followed by getAttribute() 
+PASS button.hidden: setAttribute() to -Infinity followed by IDL get 
+PASS button.hidden: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS button.hidden: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS button.hidden: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS button.hidden: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS button.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS button.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.hidden: setAttribute() to &quot;hidden&quot; followed by getAttribute() 
+PASS button.hidden: setAttribute() to &quot;hidden&quot; followed by IDL get 
+PASS button.hidden: IDL set to &quot;&quot; should not throw 
+PASS button.hidden: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS button.hidden: IDL set to &quot;&quot; followed by IDL get 
+PASS button.hidden: IDL set to &quot; foo &quot; should not throw 
+PASS button.hidden: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS button.hidden: IDL set to &quot; foo &quot; followed by IDL get 
+PASS button.hidden: IDL set to undefined should not throw 
+PASS button.hidden: IDL set to undefined followed by hasAttribute() 
+PASS button.hidden: IDL set to undefined followed by IDL get 
+PASS button.hidden: IDL set to null should not throw 
+PASS button.hidden: IDL set to null followed by hasAttribute() 
+PASS button.hidden: IDL set to null followed by IDL get 
+PASS button.hidden: IDL set to 7 should not throw 
+PASS button.hidden: IDL set to 7 followed by hasAttribute() 
+PASS button.hidden: IDL set to 7 followed by IDL get 
+PASS button.hidden: IDL set to 1.5 should not throw 
+PASS button.hidden: IDL set to 1.5 followed by hasAttribute() 
+PASS button.hidden: IDL set to 1.5 followed by IDL get 
+PASS button.hidden: IDL set to true should not throw 
+PASS button.hidden: IDL set to true followed by hasAttribute() 
+PASS button.hidden: IDL set to true followed by IDL get 
+PASS button.hidden: IDL set to false should not throw 
+PASS button.hidden: IDL set to false followed by hasAttribute() 
+PASS button.hidden: IDL set to false followed by IDL get 
+PASS button.hidden: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS button.hidden: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS button.hidden: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.hidden: IDL set to NaN should not throw 
+PASS button.hidden: IDL set to NaN followed by hasAttribute() 
+PASS button.hidden: IDL set to NaN followed by IDL get 
+PASS button.hidden: IDL set to Infinity should not throw 
+PASS button.hidden: IDL set to Infinity followed by hasAttribute() 
+PASS button.hidden: IDL set to Infinity followed by IDL get 
+PASS button.hidden: IDL set to -Infinity should not throw 
+PASS button.hidden: IDL set to -Infinity followed by hasAttribute() 
+PASS button.hidden: IDL set to -Infinity followed by IDL get 
+PASS button.hidden: IDL set to &quot;\0&quot; should not throw 
+PASS button.hidden: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS button.hidden: IDL set to &quot;\0&quot; followed by IDL get 
+PASS button.hidden: IDL set to object &quot;test-toString&quot; should not throw 
+PASS button.hidden: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS button.hidden: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS button.hidden: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS button.hidden: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS button.hidden: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.accessKey: typeof IDL attribute 
+PASS button.accessKey: IDL get with DOM attribute unset 
+PASS button.accessKey: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS button.accessKey: setAttribute() to &quot;&quot; followed by IDL get 
+PASS button.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS button.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS button.accessKey: setAttribute() to undefined followed by getAttribute() 
+PASS button.accessKey: setAttribute() to undefined followed by IDL get 
+PASS button.accessKey: setAttribute() to 7 followed by getAttribute() 
+PASS button.accessKey: setAttribute() to 7 followed by IDL get 
+PASS button.accessKey: setAttribute() to 1.5 followed by getAttribute() 
+PASS button.accessKey: setAttribute() to 1.5 followed by IDL get 
+PASS button.accessKey: setAttribute() to true followed by getAttribute() 
+PASS button.accessKey: setAttribute() to true followed by IDL get 
+PASS button.accessKey: setAttribute() to false followed by getAttribute() 
+PASS button.accessKey: setAttribute() to false followed by IDL get 
+PASS button.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS button.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.accessKey: setAttribute() to NaN followed by getAttribute() 
+PASS button.accessKey: setAttribute() to NaN followed by IDL get 
+PASS button.accessKey: setAttribute() to Infinity followed by getAttribute() 
+PASS button.accessKey: setAttribute() to Infinity followed by IDL get 
+PASS button.accessKey: setAttribute() to -Infinity followed by getAttribute() 
+PASS button.accessKey: setAttribute() to -Infinity followed by IDL get 
+PASS button.accessKey: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS button.accessKey: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS button.accessKey: setAttribute() to null followed by getAttribute() 
+PASS button.accessKey: setAttribute() to null followed by IDL get 
+PASS button.accessKey: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS button.accessKey: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS button.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS button.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.accessKey: IDL set to &quot;&quot; should not throw 
+PASS button.accessKey: IDL set to &quot;&quot; followed by getAttribute() 
+PASS button.accessKey: IDL set to &quot;&quot; followed by IDL get 
+PASS button.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS button.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS button.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS button.accessKey: IDL set to undefined should not throw 
+PASS button.accessKey: IDL set to undefined followed by getAttribute() 
+PASS button.accessKey: IDL set to undefined followed by IDL get 
+PASS button.accessKey: IDL set to 7 should not throw 
+PASS button.accessKey: IDL set to 7 followed by getAttribute() 
+PASS button.accessKey: IDL set to 7 followed by IDL get 
+PASS button.accessKey: IDL set to 1.5 should not throw 
+PASS button.accessKey: IDL set to 1.5 followed by getAttribute() 
+PASS button.accessKey: IDL set to 1.5 followed by IDL get 
+PASS button.accessKey: IDL set to true should not throw 
+PASS button.accessKey: IDL set to true followed by getAttribute() 
+PASS button.accessKey: IDL set to true followed by IDL get 
+PASS button.accessKey: IDL set to false should not throw 
+PASS button.accessKey: IDL set to false followed by getAttribute() 
+PASS button.accessKey: IDL set to false followed by IDL get 
+PASS button.accessKey: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS button.accessKey: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS button.accessKey: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.accessKey: IDL set to NaN should not throw 
+PASS button.accessKey: IDL set to NaN followed by getAttribute() 
+PASS button.accessKey: IDL set to NaN followed by IDL get 
+PASS button.accessKey: IDL set to Infinity should not throw 
+PASS button.accessKey: IDL set to Infinity followed by getAttribute() 
+PASS button.accessKey: IDL set to Infinity followed by IDL get 
+PASS button.accessKey: IDL set to -Infinity should not throw 
+PASS button.accessKey: IDL set to -Infinity followed by getAttribute() 
+PASS button.accessKey: IDL set to -Infinity followed by IDL get 
+PASS button.accessKey: IDL set to &quot;\0&quot; should not throw 
+PASS button.accessKey: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS button.accessKey: IDL set to &quot;\0&quot; followed by IDL get 
+PASS button.accessKey: IDL set to null should not throw 
+PASS button.accessKey: IDL set to null followed by getAttribute() 
+PASS button.accessKey: IDL set to null followed by IDL get 
+PASS button.accessKey: IDL set to object &quot;test-toString&quot; should not throw 
+PASS button.accessKey: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS button.accessKey: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS button.accessKey: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS button.accessKey: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS button.accessKey: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.tabIndex: typeof IDL attribute 
+PASS button.tabIndex: setAttribute() to -36 followed by getAttribute() 
+PASS button.tabIndex: setAttribute() to -36 followed by IDL get 
+PASS button.tabIndex: setAttribute() to -1 followed by getAttribute() 
+PASS button.tabIndex: setAttribute() to -1 followed by IDL get 
+PASS button.tabIndex: setAttribute() to 0 followed by getAttribute() 
+PASS button.tabIndex: setAttribute() to 0 followed by IDL get 
+PASS button.tabIndex: setAttribute() to 1 followed by getAttribute() 
+PASS button.tabIndex: setAttribute() to 1 followed by IDL get 
+PASS button.tabIndex: setAttribute() to 2147483647 followed by getAttribute() 
+PASS button.tabIndex: setAttribute() to 2147483647 followed by IDL get 
+PASS button.tabIndex: setAttribute() to -2147483648 followed by getAttribute() 
+PASS button.tabIndex: setAttribute() to -2147483648 followed by IDL get 
+PASS button.tabIndex: setAttribute() to &quot;-1&quot; followed by getAttribute() 
+PASS button.tabIndex: setAttribute() to &quot;-1&quot; followed by IDL get 
+PASS button.tabIndex: setAttribute() to &quot;-0&quot; followed by getAttribute() 
+PASS button.tabIndex: setAttribute() to &quot;-0&quot; followed by IDL get 
+PASS button.tabIndex: setAttribute() to &quot;0&quot; followed by getAttribute() 
+PASS button.tabIndex: setAttribute() to &quot;0&quot; followed by IDL get 
+PASS button.tabIndex: setAttribute() to &quot;1&quot; followed by getAttribute() 
+PASS button.tabIndex: setAttribute() to &quot;1&quot; followed by IDL get 
+PASS button.tabIndex: setAttribute() to &quot;\t7&quot; followed by getAttribute() 
+PASS button.tabIndex: setAttribute() to &quot;\t7&quot; followed by IDL get 
+PASS button.tabIndex: setAttribute() to &quot;\f7&quot; followed by getAttribute() 
+PASS button.tabIndex: setAttribute() to &quot;\f7&quot; followed by IDL get 
+PASS button.tabIndex: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS button.tabIndex: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS button.tabIndex: setAttribute() to &quot;\n7&quot; followed by getAttribute() 
+PASS button.tabIndex: setAttribute() to &quot;\n7&quot; followed by IDL get 
+PASS button.tabIndex: setAttribute() to &quot;\r7&quot; followed by getAttribute() 
+PASS button.tabIndex: setAttribute() to &quot;\r7&quot; followed by IDL get 
+PASS button.tabIndex: setAttribute() to 1.5 followed by getAttribute() 
+PASS button.tabIndex: setAttribute() to 1.5 followed by IDL get 
+PASS button.tabIndex: setAttribute() to object &quot;2&quot; followed by getAttribute() 
+PASS button.tabIndex: setAttribute() to object &quot;2&quot; followed by IDL get 
+PASS button.tabIndex: IDL set to -36 should not throw 
+PASS button.tabIndex: IDL set to -36 followed by getAttribute() 
+PASS button.tabIndex: IDL set to -36 followed by IDL get 
+PASS button.tabIndex: IDL set to -1 should not throw 
+PASS button.tabIndex: IDL set to -1 followed by getAttribute() 
+PASS button.tabIndex: IDL set to -1 followed by IDL get 
+PASS button.tabIndex: IDL set to 0 should not throw 
+PASS button.tabIndex: IDL set to 0 followed by getAttribute() 
+PASS button.tabIndex: IDL set to 0 followed by IDL get 
+PASS button.tabIndex: IDL set to 1 should not throw 
+PASS button.tabIndex: IDL set to 1 followed by getAttribute() 
+PASS button.tabIndex: IDL set to 1 followed by IDL get 
+PASS button.tabIndex: IDL set to 2147483647 should not throw 
+PASS button.tabIndex: IDL set to 2147483647 followed by getAttribute() 
+PASS button.tabIndex: IDL set to 2147483647 followed by IDL get 
+PASS button.tabIndex: IDL set to -2147483648 should not throw 
+PASS button.tabIndex: IDL set to -2147483648 followed by getAttribute() 
+PASS button.tabIndex: IDL set to -2147483648 followed by IDL get 
+PASS button.autofocus: typeof IDL attribute 
+PASS button.autofocus: IDL get with DOM attribute unset 
+PASS button.autofocus: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS button.autofocus: setAttribute() to &quot;&quot; followed by IDL get 
+PASS button.autofocus: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS button.autofocus: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS button.autofocus: setAttribute() to undefined followed by getAttribute() 
+PASS button.autofocus: setAttribute() to undefined followed by IDL get 
+PASS button.autofocus: setAttribute() to null followed by getAttribute() 
+PASS button.autofocus: setAttribute() to null followed by IDL get 
+PASS button.autofocus: setAttribute() to 7 followed by getAttribute() 
+PASS button.autofocus: setAttribute() to 7 followed by IDL get 
+PASS button.autofocus: setAttribute() to 1.5 followed by getAttribute() 
+PASS button.autofocus: setAttribute() to 1.5 followed by IDL get 
+PASS button.autofocus: setAttribute() to true followed by getAttribute() 
+PASS button.autofocus: setAttribute() to true followed by IDL get 
+PASS button.autofocus: setAttribute() to false followed by getAttribute() 
+PASS button.autofocus: setAttribute() to false followed by IDL get 
+PASS button.autofocus: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS button.autofocus: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.autofocus: setAttribute() to NaN followed by getAttribute() 
+PASS button.autofocus: setAttribute() to NaN followed by IDL get 
+PASS button.autofocus: setAttribute() to Infinity followed by getAttribute() 
+PASS button.autofocus: setAttribute() to Infinity followed by IDL get 
+PASS button.autofocus: setAttribute() to -Infinity followed by getAttribute() 
+PASS button.autofocus: setAttribute() to -Infinity followed by IDL get 
+PASS button.autofocus: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS button.autofocus: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS button.autofocus: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS button.autofocus: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS button.autofocus: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS button.autofocus: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.autofocus: setAttribute() to &quot;autofocus&quot; followed by getAttribute() 
+PASS button.autofocus: setAttribute() to &quot;autofocus&quot; followed by IDL get 
+PASS button.autofocus: IDL set to &quot;&quot; should not throw 
+PASS button.autofocus: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS button.autofocus: IDL set to &quot;&quot; followed by IDL get 
+PASS button.autofocus: IDL set to &quot; foo &quot; should not throw 
+PASS button.autofocus: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS button.autofocus: IDL set to &quot; foo &quot; followed by IDL get 
+PASS button.autofocus: IDL set to undefined should not throw 
+PASS button.autofocus: IDL set to undefined followed by hasAttribute() 
+PASS button.autofocus: IDL set to undefined followed by IDL get 
+PASS button.autofocus: IDL set to null should not throw 
+PASS button.autofocus: IDL set to null followed by hasAttribute() 
+PASS button.autofocus: IDL set to null followed by IDL get 
+PASS button.autofocus: IDL set to 7 should not throw 
+PASS button.autofocus: IDL set to 7 followed by hasAttribute() 
+PASS button.autofocus: IDL set to 7 followed by IDL get 
+PASS button.autofocus: IDL set to 1.5 should not throw 
+PASS button.autofocus: IDL set to 1.5 followed by hasAttribute() 
+PASS button.autofocus: IDL set to 1.5 followed by IDL get 
+PASS button.autofocus: IDL set to true should not throw 
+PASS button.autofocus: IDL set to true followed by hasAttribute() 
+PASS button.autofocus: IDL set to true followed by IDL get 
+PASS button.autofocus: IDL set to false should not throw 
+PASS button.autofocus: IDL set to false followed by hasAttribute() 
+PASS button.autofocus: IDL set to false followed by IDL get 
+PASS button.autofocus: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS button.autofocus: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS button.autofocus: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.autofocus: IDL set to NaN should not throw 
+PASS button.autofocus: IDL set to NaN followed by hasAttribute() 
+PASS button.autofocus: IDL set to NaN followed by IDL get 
+PASS button.autofocus: IDL set to Infinity should not throw 
+PASS button.autofocus: IDL set to Infinity followed by hasAttribute() 
+PASS button.autofocus: IDL set to Infinity followed by IDL get 
+PASS button.autofocus: IDL set to -Infinity should not throw 
+PASS button.autofocus: IDL set to -Infinity followed by hasAttribute() 
+PASS button.autofocus: IDL set to -Infinity followed by IDL get 
+PASS button.autofocus: IDL set to &quot;\0&quot; should not throw 
+PASS button.autofocus: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS button.autofocus: IDL set to &quot;\0&quot; followed by IDL get 
+PASS button.autofocus: IDL set to object &quot;test-toString&quot; should not throw 
+PASS button.autofocus: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS button.autofocus: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS button.autofocus: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS button.autofocus: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS button.autofocus: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.disabled: typeof IDL attribute 
+PASS button.disabled: IDL get with DOM attribute unset 
+PASS button.disabled: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS button.disabled: setAttribute() to &quot;&quot; followed by IDL get 
+PASS button.disabled: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS button.disabled: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS button.disabled: setAttribute() to undefined followed by getAttribute() 
+PASS button.disabled: setAttribute() to undefined followed by IDL get 
+PASS button.disabled: setAttribute() to null followed by getAttribute() 
+PASS button.disabled: setAttribute() to null followed by IDL get 
+PASS button.disabled: setAttribute() to 7 followed by getAttribute() 
+PASS button.disabled: setAttribute() to 7 followed by IDL get 
+PASS button.disabled: setAttribute() to 1.5 followed by getAttribute() 
+PASS button.disabled: setAttribute() to 1.5 followed by IDL get 
+PASS button.disabled: setAttribute() to true followed by getAttribute() 
+PASS button.disabled: setAttribute() to true followed by IDL get 
+PASS button.disabled: setAttribute() to false followed by getAttribute() 
+PASS button.disabled: setAttribute() to false followed by IDL get 
+PASS button.disabled: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS button.disabled: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.disabled: setAttribute() to NaN followed by getAttribute() 
+PASS button.disabled: setAttribute() to NaN followed by IDL get 
+PASS button.disabled: setAttribute() to Infinity followed by getAttribute() 
+PASS button.disabled: setAttribute() to Infinity followed by IDL get 
+PASS button.disabled: setAttribute() to -Infinity followed by getAttribute() 
+PASS button.disabled: setAttribute() to -Infinity followed by IDL get 
+PASS button.disabled: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS button.disabled: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS button.disabled: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS button.disabled: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS button.disabled: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS button.disabled: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.disabled: setAttribute() to &quot;disabled&quot; followed by getAttribute() 
+PASS button.disabled: setAttribute() to &quot;disabled&quot; followed by IDL get 
+PASS button.disabled: IDL set to &quot;&quot; should not throw 
+PASS button.disabled: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS button.disabled: IDL set to &quot;&quot; followed by IDL get 
+PASS button.disabled: IDL set to &quot; foo &quot; should not throw 
+PASS button.disabled: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS button.disabled: IDL set to &quot; foo &quot; followed by IDL get 
+PASS button.disabled: IDL set to undefined should not throw 
+PASS button.disabled: IDL set to undefined followed by hasAttribute() 
+PASS button.disabled: IDL set to undefined followed by IDL get 
+PASS button.disabled: IDL set to null should not throw 
+PASS button.disabled: IDL set to null followed by hasAttribute() 
+PASS button.disabled: IDL set to null followed by IDL get 
+PASS button.disabled: IDL set to 7 should not throw 
+PASS button.disabled: IDL set to 7 followed by hasAttribute() 
+PASS button.disabled: IDL set to 7 followed by IDL get 
+PASS button.disabled: IDL set to 1.5 should not throw 
+PASS button.disabled: IDL set to 1.5 followed by hasAttribute() 
+PASS button.disabled: IDL set to 1.5 followed by IDL get 
+PASS button.disabled: IDL set to true should not throw 
+PASS button.disabled: IDL set to true followed by hasAttribute() 
+PASS button.disabled: IDL set to true followed by IDL get 
+PASS button.disabled: IDL set to false should not throw 
+PASS button.disabled: IDL set to false followed by hasAttribute() 
+PASS button.disabled: IDL set to false followed by IDL get 
+PASS button.disabled: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS button.disabled: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS button.disabled: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.disabled: IDL set to NaN should not throw 
+PASS button.disabled: IDL set to NaN followed by hasAttribute() 
+PASS button.disabled: IDL set to NaN followed by IDL get 
+PASS button.disabled: IDL set to Infinity should not throw 
+PASS button.disabled: IDL set to Infinity followed by hasAttribute() 
+PASS button.disabled: IDL set to Infinity followed by IDL get 
+PASS button.disabled: IDL set to -Infinity should not throw 
+PASS button.disabled: IDL set to -Infinity followed by hasAttribute() 
+PASS button.disabled: IDL set to -Infinity followed by IDL get 
+PASS button.disabled: IDL set to &quot;\0&quot; should not throw 
+PASS button.disabled: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS button.disabled: IDL set to &quot;\0&quot; followed by IDL get 
+PASS button.disabled: IDL set to object &quot;test-toString&quot; should not throw 
+PASS button.disabled: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS button.disabled: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS button.disabled: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS button.disabled: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS button.disabled: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.formEnctype: typeof IDL attribute 
+PASS button.formEnctype: IDL get with DOM attribute unset 
+PASS button.formEnctype: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to &quot;&quot; followed by IDL get 
+PASS button.formEnctype: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS button.formEnctype: setAttribute() to undefined followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to undefined followed by IDL get 
+PASS button.formEnctype: setAttribute() to 7 followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to 7 followed by IDL get 
+PASS button.formEnctype: setAttribute() to 1.5 followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to 1.5 followed by IDL get 
+PASS button.formEnctype: setAttribute() to true followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to true followed by IDL get 
+PASS button.formEnctype: setAttribute() to false followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to false followed by IDL get 
+PASS button.formEnctype: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.formEnctype: setAttribute() to NaN followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to NaN followed by IDL get 
+PASS button.formEnctype: setAttribute() to Infinity followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to Infinity followed by IDL get 
+PASS button.formEnctype: setAttribute() to -Infinity followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to -Infinity followed by IDL get 
+PASS button.formEnctype: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS button.formEnctype: setAttribute() to null followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to null followed by IDL get 
+PASS button.formEnctype: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS button.formEnctype: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.formEnctype: setAttribute() to &quot;application/x-www-form-urlencoded&quot; followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to &quot;application/x-www-form-urlencoded&quot; followed by IDL get 
+PASS button.formEnctype: setAttribute() to &quot;xapplication/x-www-form-urlencoded&quot; followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to &quot;xapplication/x-www-form-urlencoded&quot; followed by IDL get 
+PASS button.formEnctype: setAttribute() to &quot;application/x-www-form-urlencoded\0&quot; followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to &quot;application/x-www-form-urlencoded\0&quot; followed by IDL get 
+PASS button.formEnctype: setAttribute() to &quot;pplication/x-www-form-urlencoded&quot; followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to &quot;pplication/x-www-form-urlencoded&quot; followed by IDL get 
+PASS button.formEnctype: setAttribute() to &quot;APPLICATION/X-WWW-FORM-URLENCODED&quot; followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to &quot;APPLICATION/X-WWW-FORM-URLENCODED&quot; followed by IDL get 
+PASS button.formEnctype: setAttribute() to &quot;multipart/form-data&quot; followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to &quot;multipart/form-data&quot; followed by IDL get 
+PASS button.formEnctype: setAttribute() to &quot;xmultipart/form-data&quot; followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to &quot;xmultipart/form-data&quot; followed by IDL get 
+PASS button.formEnctype: setAttribute() to &quot;multipart/form-data\0&quot; followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to &quot;multipart/form-data\0&quot; followed by IDL get 
+PASS button.formEnctype: setAttribute() to &quot;ultipart/form-data&quot; followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to &quot;ultipart/form-data&quot; followed by IDL get 
+PASS button.formEnctype: setAttribute() to &quot;MULTIPART/FORM-DATA&quot; followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to &quot;MULTIPART/FORM-DATA&quot; followed by IDL get 
+PASS button.formEnctype: setAttribute() to &quot;text/plain&quot; followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to &quot;text/plain&quot; followed by IDL get 
+PASS button.formEnctype: setAttribute() to &quot;xtext/plain&quot; followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to &quot;xtext/plain&quot; followed by IDL get 
+PASS button.formEnctype: setAttribute() to &quot;text/plain\0&quot; followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to &quot;text/plain\0&quot; followed by IDL get 
+PASS button.formEnctype: setAttribute() to &quot;ext/plain&quot; followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to &quot;ext/plain&quot; followed by IDL get 
+PASS button.formEnctype: setAttribute() to &quot;TEXT/PLAIN&quot; followed by getAttribute() 
+PASS button.formEnctype: setAttribute() to &quot;TEXT/PLAIN&quot; followed by IDL get 
+PASS button.formEnctype: IDL set to &quot;&quot; should not throw 
+PASS button.formEnctype: IDL set to &quot;&quot; followed by getAttribute() 
+PASS button.formEnctype: IDL set to &quot;&quot; followed by IDL get 
+PASS button.formEnctype: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS button.formEnctype: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS button.formEnctype: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS button.formEnctype: IDL set to undefined should not throw 
+PASS button.formEnctype: IDL set to undefined followed by getAttribute() 
+PASS button.formEnctype: IDL set to undefined followed by IDL get 
+PASS button.formEnctype: IDL set to 7 should not throw 
+PASS button.formEnctype: IDL set to 7 followed by getAttribute() 
+PASS button.formEnctype: IDL set to 7 followed by IDL get 
+PASS button.formEnctype: IDL set to 1.5 should not throw 
+PASS button.formEnctype: IDL set to 1.5 followed by getAttribute() 
+PASS button.formEnctype: IDL set to 1.5 followed by IDL get 
+PASS button.formEnctype: IDL set to true should not throw 
+PASS button.formEnctype: IDL set to true followed by getAttribute() 
+PASS button.formEnctype: IDL set to true followed by IDL get 
+PASS button.formEnctype: IDL set to false should not throw 
+PASS button.formEnctype: IDL set to false followed by getAttribute() 
+PASS button.formEnctype: IDL set to false followed by IDL get 
+PASS button.formEnctype: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS button.formEnctype: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS button.formEnctype: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.formEnctype: IDL set to NaN should not throw 
+PASS button.formEnctype: IDL set to NaN followed by getAttribute() 
+PASS button.formEnctype: IDL set to NaN followed by IDL get 
+PASS button.formEnctype: IDL set to Infinity should not throw 
+PASS button.formEnctype: IDL set to Infinity followed by getAttribute() 
+PASS button.formEnctype: IDL set to Infinity followed by IDL get 
+PASS button.formEnctype: IDL set to -Infinity should not throw 
+PASS button.formEnctype: IDL set to -Infinity followed by getAttribute() 
+PASS button.formEnctype: IDL set to -Infinity followed by IDL get 
+PASS button.formEnctype: IDL set to &quot;\0&quot; should not throw 
+PASS button.formEnctype: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS button.formEnctype: IDL set to &quot;\0&quot; followed by IDL get 
+PASS button.formEnctype: IDL set to null should not throw 
+FAIL button.formEnctype: IDL set to null followed by IDL get assert_equals: expected &quot;application/x-www-form-urlencoded&quot; but got &quot;&quot;
+PASS button.formEnctype: IDL set to object &quot;test-toString&quot; should not throw 
+PASS button.formEnctype: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS button.formEnctype: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS button.formEnctype: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS button.formEnctype: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS button.formEnctype: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.formEnctype: IDL set to &quot;application/x-www-form-urlencoded&quot; should not throw 
+PASS button.formEnctype: IDL set to &quot;application/x-www-form-urlencoded&quot; followed by getAttribute() 
+PASS button.formEnctype: IDL set to &quot;application/x-www-form-urlencoded&quot; followed by IDL get 
+PASS button.formEnctype: IDL set to &quot;xapplication/x-www-form-urlencoded&quot; should not throw 
+PASS button.formEnctype: IDL set to &quot;xapplication/x-www-form-urlencoded&quot; followed by getAttribute() 
+PASS button.formEnctype: IDL set to &quot;xapplication/x-www-form-urlencoded&quot; followed by IDL get 
+PASS button.formEnctype: IDL set to &quot;application/x-www-form-urlencoded\0&quot; should not throw 
+PASS button.formEnctype: IDL set to &quot;application/x-www-form-urlencoded\0&quot; followed by getAttribute() 
+PASS button.formEnctype: IDL set to &quot;application/x-www-form-urlencoded\0&quot; followed by IDL get 
+PASS button.formEnctype: IDL set to &quot;pplication/x-www-form-urlencoded&quot; should not throw 
+PASS button.formEnctype: IDL set to &quot;pplication/x-www-form-urlencoded&quot; followed by getAttribute() 
+PASS button.formEnctype: IDL set to &quot;pplication/x-www-form-urlencoded&quot; followed by IDL get 
+PASS button.formEnctype: IDL set to &quot;APPLICATION/X-WWW-FORM-URLENCODED&quot; should not throw 
+PASS button.formEnctype: IDL set to &quot;APPLICATION/X-WWW-FORM-URLENCODED&quot; followed by getAttribute() 
+PASS button.formEnctype: IDL set to &quot;APPLICATION/X-WWW-FORM-URLENCODED&quot; followed by IDL get 
+PASS button.formEnctype: IDL set to &quot;multipart/form-data&quot; should not throw 
+PASS button.formEnctype: IDL set to &quot;multipart/form-data&quot; followed by getAttribute() 
+PASS button.formEnctype: IDL set to &quot;multipart/form-data&quot; followed by IDL get 
+PASS button.formEnctype: IDL set to &quot;xmultipart/form-data&quot; should not throw 
+PASS button.formEnctype: IDL set to &quot;xmultipart/form-data&quot; followed by getAttribute() 
+PASS button.formEnctype: IDL set to &quot;xmultipart/form-data&quot; followed by IDL get 
+PASS button.formEnctype: IDL set to &quot;multipart/form-data\0&quot; should not throw 
+PASS button.formEnctype: IDL set to &quot;multipart/form-data\0&quot; followed by getAttribute() 
+PASS button.formEnctype: IDL set to &quot;multipart/form-data\0&quot; followed by IDL get 
+PASS button.formEnctype: IDL set to &quot;ultipart/form-data&quot; should not throw 
+PASS button.formEnctype: IDL set to &quot;ultipart/form-data&quot; followed by getAttribute() 
+PASS button.formEnctype: IDL set to &quot;ultipart/form-data&quot; followed by IDL get 
+PASS button.formEnctype: IDL set to &quot;MULTIPART/FORM-DATA&quot; should not throw 
+PASS button.formEnctype: IDL set to &quot;MULTIPART/FORM-DATA&quot; followed by getAttribute() 
+PASS button.formEnctype: IDL set to &quot;MULTIPART/FORM-DATA&quot; followed by IDL get 
+PASS button.formEnctype: IDL set to &quot;text/plain&quot; should not throw 
+PASS button.formEnctype: IDL set to &quot;text/plain&quot; followed by getAttribute() 
+PASS button.formEnctype: IDL set to &quot;text/plain&quot; followed by IDL get 
+PASS button.formEnctype: IDL set to &quot;xtext/plain&quot; should not throw 
+PASS button.formEnctype: IDL set to &quot;xtext/plain&quot; followed by getAttribute() 
+PASS button.formEnctype: IDL set to &quot;xtext/plain&quot; followed by IDL get 
+PASS button.formEnctype: IDL set to &quot;text/plain\0&quot; should not throw 
+PASS button.formEnctype: IDL set to &quot;text/plain\0&quot; followed by getAttribute() 
+PASS button.formEnctype: IDL set to &quot;text/plain\0&quot; followed by IDL get 
+PASS button.formEnctype: IDL set to &quot;ext/plain&quot; should not throw 
+PASS button.formEnctype: IDL set to &quot;ext/plain&quot; followed by getAttribute() 
+PASS button.formEnctype: IDL set to &quot;ext/plain&quot; followed by IDL get 
+PASS button.formEnctype: IDL set to &quot;TEXT/PLAIN&quot; should not throw 
+PASS button.formEnctype: IDL set to &quot;TEXT/PLAIN&quot; followed by getAttribute() 
+PASS button.formEnctype: IDL set to &quot;TEXT/PLAIN&quot; followed by IDL get 
+PASS button.formMethod: typeof IDL attribute 
+PASS button.formMethod: IDL get with DOM attribute unset 
+PASS button.formMethod: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS button.formMethod: setAttribute() to &quot;&quot; followed by IDL get 
+PASS button.formMethod: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS button.formMethod: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS button.formMethod: setAttribute() to undefined followed by getAttribute() 
+PASS button.formMethod: setAttribute() to undefined followed by IDL get 
+PASS button.formMethod: setAttribute() to 7 followed by getAttribute() 
+PASS button.formMethod: setAttribute() to 7 followed by IDL get 
+PASS button.formMethod: setAttribute() to 1.5 followed by getAttribute() 
+PASS button.formMethod: setAttribute() to 1.5 followed by IDL get 
+PASS button.formMethod: setAttribute() to true followed by getAttribute() 
+PASS button.formMethod: setAttribute() to true followed by IDL get 
+PASS button.formMethod: setAttribute() to false followed by getAttribute() 
+PASS button.formMethod: setAttribute() to false followed by IDL get 
+PASS button.formMethod: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS button.formMethod: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.formMethod: setAttribute() to NaN followed by getAttribute() 
+PASS button.formMethod: setAttribute() to NaN followed by IDL get 
+PASS button.formMethod: setAttribute() to Infinity followed by getAttribute() 
+PASS button.formMethod: setAttribute() to Infinity followed by IDL get 
+PASS button.formMethod: setAttribute() to -Infinity followed by getAttribute() 
+PASS button.formMethod: setAttribute() to -Infinity followed by IDL get 
+PASS button.formMethod: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS button.formMethod: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS button.formMethod: setAttribute() to null followed by getAttribute() 
+PASS button.formMethod: setAttribute() to null followed by IDL get 
+PASS button.formMethod: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS button.formMethod: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS button.formMethod: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS button.formMethod: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.formMethod: setAttribute() to &quot;get&quot; followed by getAttribute() 
+PASS button.formMethod: setAttribute() to &quot;get&quot; followed by IDL get 
+PASS button.formMethod: setAttribute() to &quot;xget&quot; followed by getAttribute() 
+PASS button.formMethod: setAttribute() to &quot;xget&quot; followed by IDL get 
+PASS button.formMethod: setAttribute() to &quot;get\0&quot; followed by getAttribute() 
+PASS button.formMethod: setAttribute() to &quot;get\0&quot; followed by IDL get 
+PASS button.formMethod: setAttribute() to &quot;et&quot; followed by getAttribute() 
+PASS button.formMethod: setAttribute() to &quot;et&quot; followed by IDL get 
+PASS button.formMethod: setAttribute() to &quot;GET&quot; followed by getAttribute() 
+PASS button.formMethod: setAttribute() to &quot;GET&quot; followed by IDL get 
+PASS button.formMethod: setAttribute() to &quot;post&quot; followed by getAttribute() 
+PASS button.formMethod: setAttribute() to &quot;post&quot; followed by IDL get 
+PASS button.formMethod: setAttribute() to &quot;xpost&quot; followed by getAttribute() 
+PASS button.formMethod: setAttribute() to &quot;xpost&quot; followed by IDL get 
+PASS button.formMethod: setAttribute() to &quot;post\0&quot; followed by getAttribute() 
+PASS button.formMethod: setAttribute() to &quot;post\0&quot; followed by IDL get 
+PASS button.formMethod: setAttribute() to &quot;ost&quot; followed by getAttribute() 
+PASS button.formMethod: setAttribute() to &quot;ost&quot; followed by IDL get 
+PASS button.formMethod: setAttribute() to &quot;POST&quot; followed by getAttribute() 
+PASS button.formMethod: setAttribute() to &quot;POST&quot; followed by IDL get 
+PASS button.formMethod: setAttribute() to &quot;dialog&quot; followed by getAttribute() 
+FAIL button.formMethod: setAttribute() to &quot;dialog&quot; followed by IDL get assert_equals: expected &quot;dialog&quot; but got &quot;get&quot;
+PASS button.formMethod: setAttribute() to &quot;xdialog&quot; followed by getAttribute() 
+PASS button.formMethod: setAttribute() to &quot;xdialog&quot; followed by IDL get 
+PASS button.formMethod: setAttribute() to &quot;dialog\0&quot; followed by getAttribute() 
+PASS button.formMethod: setAttribute() to &quot;dialog\0&quot; followed by IDL get 
+PASS button.formMethod: setAttribute() to &quot;ialog&quot; followed by getAttribute() 
+PASS button.formMethod: setAttribute() to &quot;ialog&quot; followed by IDL get 
+PASS button.formMethod: setAttribute() to &quot;DIALOG&quot; followed by getAttribute() 
+FAIL button.formMethod: setAttribute() to &quot;DIALOG&quot; followed by IDL get assert_equals: expected &quot;dialog&quot; but got &quot;get&quot;
+PASS button.formMethod: IDL set to &quot;&quot; should not throw 
+PASS button.formMethod: IDL set to &quot;&quot; followed by getAttribute() 
+PASS button.formMethod: IDL set to &quot;&quot; followed by IDL get 
+PASS button.formMethod: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS button.formMethod: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS button.formMethod: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS button.formMethod: IDL set to undefined should not throw 
+PASS button.formMethod: IDL set to undefined followed by getAttribute() 
+PASS button.formMethod: IDL set to undefined followed by IDL get 
+PASS button.formMethod: IDL set to 7 should not throw 
+PASS button.formMethod: IDL set to 7 followed by getAttribute() 
+PASS button.formMethod: IDL set to 7 followed by IDL get 
+PASS button.formMethod: IDL set to 1.5 should not throw 
+PASS button.formMethod: IDL set to 1.5 followed by getAttribute() 
+PASS button.formMethod: IDL set to 1.5 followed by IDL get 
+PASS button.formMethod: IDL set to true should not throw 
+PASS button.formMethod: IDL set to true followed by getAttribute() 
+PASS button.formMethod: IDL set to true followed by IDL get 
+PASS button.formMethod: IDL set to false should not throw 
+PASS button.formMethod: IDL set to false followed by getAttribute() 
+PASS button.formMethod: IDL set to false followed by IDL get 
+PASS button.formMethod: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS button.formMethod: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS button.formMethod: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.formMethod: IDL set to NaN should not throw 
+PASS button.formMethod: IDL set to NaN followed by getAttribute() 
+PASS button.formMethod: IDL set to NaN followed by IDL get 
+PASS button.formMethod: IDL set to Infinity should not throw 
+PASS button.formMethod: IDL set to Infinity followed by getAttribute() 
+PASS button.formMethod: IDL set to Infinity followed by IDL get 
+PASS button.formMethod: IDL set to -Infinity should not throw 
+PASS button.formMethod: IDL set to -Infinity followed by getAttribute() 
+PASS button.formMethod: IDL set to -Infinity followed by IDL get 
+PASS button.formMethod: IDL set to &quot;\0&quot; should not throw 
+PASS button.formMethod: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS button.formMethod: IDL set to &quot;\0&quot; followed by IDL get 
+PASS button.formMethod: IDL set to null should not throw 
+FAIL button.formMethod: IDL set to null followed by IDL get assert_equals: expected &quot;get&quot; but got &quot;&quot;
+PASS button.formMethod: IDL set to object &quot;test-toString&quot; should not throw 
+PASS button.formMethod: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS button.formMethod: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS button.formMethod: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS button.formMethod: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS button.formMethod: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.formMethod: IDL set to &quot;get&quot; should not throw 
+PASS button.formMethod: IDL set to &quot;get&quot; followed by getAttribute() 
+PASS button.formMethod: IDL set to &quot;get&quot; followed by IDL get 
+PASS button.formMethod: IDL set to &quot;xget&quot; should not throw 
+PASS button.formMethod: IDL set to &quot;xget&quot; followed by getAttribute() 
+PASS button.formMethod: IDL set to &quot;xget&quot; followed by IDL get 
+PASS button.formMethod: IDL set to &quot;get\0&quot; should not throw 
+PASS button.formMethod: IDL set to &quot;get\0&quot; followed by getAttribute() 
+PASS button.formMethod: IDL set to &quot;get\0&quot; followed by IDL get 
+PASS button.formMethod: IDL set to &quot;et&quot; should not throw 
+PASS button.formMethod: IDL set to &quot;et&quot; followed by getAttribute() 
+PASS button.formMethod: IDL set to &quot;et&quot; followed by IDL get 
+PASS button.formMethod: IDL set to &quot;GET&quot; should not throw 
+PASS button.formMethod: IDL set to &quot;GET&quot; followed by getAttribute() 
+PASS button.formMethod: IDL set to &quot;GET&quot; followed by IDL get 
+PASS button.formMethod: IDL set to &quot;post&quot; should not throw 
+PASS button.formMethod: IDL set to &quot;post&quot; followed by getAttribute() 
+PASS button.formMethod: IDL set to &quot;post&quot; followed by IDL get 
+PASS button.formMethod: IDL set to &quot;xpost&quot; should not throw 
+PASS button.formMethod: IDL set to &quot;xpost&quot; followed by getAttribute() 
+PASS button.formMethod: IDL set to &quot;xpost&quot; followed by IDL get 
+PASS button.formMethod: IDL set to &quot;post\0&quot; should not throw 
+PASS button.formMethod: IDL set to &quot;post\0&quot; followed by getAttribute() 
+PASS button.formMethod: IDL set to &quot;post\0&quot; followed by IDL get 
+PASS button.formMethod: IDL set to &quot;ost&quot; should not throw 
+PASS button.formMethod: IDL set to &quot;ost&quot; followed by getAttribute() 
+PASS button.formMethod: IDL set to &quot;ost&quot; followed by IDL get 
+PASS button.formMethod: IDL set to &quot;POST&quot; should not throw 
+PASS button.formMethod: IDL set to &quot;POST&quot; followed by getAttribute() 
+PASS button.formMethod: IDL set to &quot;POST&quot; followed by IDL get 
+PASS button.formMethod: IDL set to &quot;dialog&quot; should not throw 
+PASS button.formMethod: IDL set to &quot;dialog&quot; followed by getAttribute() 
+FAIL button.formMethod: IDL set to &quot;dialog&quot; followed by IDL get assert_equals: expected &quot;dialog&quot; but got &quot;get&quot;
+PASS button.formMethod: IDL set to &quot;xdialog&quot; should not throw 
+PASS button.formMethod: IDL set to &quot;xdialog&quot; followed by getAttribute() 
+PASS button.formMethod: IDL set to &quot;xdialog&quot; followed by IDL get 
+PASS button.formMethod: IDL set to &quot;dialog\0&quot; should not throw 
+PASS button.formMethod: IDL set to &quot;dialog\0&quot; followed by getAttribute() 
+PASS button.formMethod: IDL set to &quot;dialog\0&quot; followed by IDL get 
+PASS button.formMethod: IDL set to &quot;ialog&quot; should not throw 
+PASS button.formMethod: IDL set to &quot;ialog&quot; followed by getAttribute() 
+PASS button.formMethod: IDL set to &quot;ialog&quot; followed by IDL get 
+PASS button.formMethod: IDL set to &quot;DIALOG&quot; should not throw 
+PASS button.formMethod: IDL set to &quot;DIALOG&quot; followed by getAttribute() 
+FAIL button.formMethod: IDL set to &quot;DIALOG&quot; followed by IDL get assert_equals: expected &quot;dialog&quot; but got &quot;get&quot;
+PASS button.formNoValidate: typeof IDL attribute 
+PASS button.formNoValidate: IDL get with DOM attribute unset 
+PASS button.formNoValidate: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS button.formNoValidate: setAttribute() to &quot;&quot; followed by IDL get 
+PASS button.formNoValidate: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS button.formNoValidate: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS button.formNoValidate: setAttribute() to undefined followed by getAttribute() 
+PASS button.formNoValidate: setAttribute() to undefined followed by IDL get 
+PASS button.formNoValidate: setAttribute() to null followed by getAttribute() 
+PASS button.formNoValidate: setAttribute() to null followed by IDL get 
+PASS button.formNoValidate: setAttribute() to 7 followed by getAttribute() 
+PASS button.formNoValidate: setAttribute() to 7 followed by IDL get 
+PASS button.formNoValidate: setAttribute() to 1.5 followed by getAttribute() 
+PASS button.formNoValidate: setAttribute() to 1.5 followed by IDL get 
+PASS button.formNoValidate: setAttribute() to true followed by getAttribute() 
+PASS button.formNoValidate: setAttribute() to true followed by IDL get 
+PASS button.formNoValidate: setAttribute() to false followed by getAttribute() 
+PASS button.formNoValidate: setAttribute() to false followed by IDL get 
+PASS button.formNoValidate: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS button.formNoValidate: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.formNoValidate: setAttribute() to NaN followed by getAttribute() 
+PASS button.formNoValidate: setAttribute() to NaN followed by IDL get 
+PASS button.formNoValidate: setAttribute() to Infinity followed by getAttribute() 
+PASS button.formNoValidate: setAttribute() to Infinity followed by IDL get 
+PASS button.formNoValidate: setAttribute() to -Infinity followed by getAttribute() 
+PASS button.formNoValidate: setAttribute() to -Infinity followed by IDL get 
+PASS button.formNoValidate: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS button.formNoValidate: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS button.formNoValidate: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS button.formNoValidate: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS button.formNoValidate: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS button.formNoValidate: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.formNoValidate: setAttribute() to &quot;formNoValidate&quot; followed by getAttribute() 
+PASS button.formNoValidate: setAttribute() to &quot;formNoValidate&quot; followed by IDL get 
+PASS button.formNoValidate: IDL set to &quot;&quot; should not throw 
+PASS button.formNoValidate: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS button.formNoValidate: IDL set to &quot;&quot; followed by IDL get 
+PASS button.formNoValidate: IDL set to &quot; foo &quot; should not throw 
+PASS button.formNoValidate: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS button.formNoValidate: IDL set to &quot; foo &quot; followed by IDL get 
+PASS button.formNoValidate: IDL set to undefined should not throw 
+PASS button.formNoValidate: IDL set to undefined followed by hasAttribute() 
+PASS button.formNoValidate: IDL set to undefined followed by IDL get 
+PASS button.formNoValidate: IDL set to null should not throw 
+PASS button.formNoValidate: IDL set to null followed by hasAttribute() 
+PASS button.formNoValidate: IDL set to null followed by IDL get 
+PASS button.formNoValidate: IDL set to 7 should not throw 
+PASS button.formNoValidate: IDL set to 7 followed by hasAttribute() 
+PASS button.formNoValidate: IDL set to 7 followed by IDL get 
+PASS button.formNoValidate: IDL set to 1.5 should not throw 
+PASS button.formNoValidate: IDL set to 1.5 followed by hasAttribute() 
+PASS button.formNoValidate: IDL set to 1.5 followed by IDL get 
+PASS button.formNoValidate: IDL set to true should not throw 
+PASS button.formNoValidate: IDL set to true followed by hasAttribute() 
+PASS button.formNoValidate: IDL set to true followed by IDL get 
+PASS button.formNoValidate: IDL set to false should not throw 
+PASS button.formNoValidate: IDL set to false followed by hasAttribute() 
+PASS button.formNoValidate: IDL set to false followed by IDL get 
+PASS button.formNoValidate: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS button.formNoValidate: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS button.formNoValidate: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.formNoValidate: IDL set to NaN should not throw 
+PASS button.formNoValidate: IDL set to NaN followed by hasAttribute() 
+PASS button.formNoValidate: IDL set to NaN followed by IDL get 
+PASS button.formNoValidate: IDL set to Infinity should not throw 
+PASS button.formNoValidate: IDL set to Infinity followed by hasAttribute() 
+PASS button.formNoValidate: IDL set to Infinity followed by IDL get 
+PASS button.formNoValidate: IDL set to -Infinity should not throw 
+PASS button.formNoValidate: IDL set to -Infinity followed by hasAttribute() 
+PASS button.formNoValidate: IDL set to -Infinity followed by IDL get 
+PASS button.formNoValidate: IDL set to &quot;\0&quot; should not throw 
+PASS button.formNoValidate: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS button.formNoValidate: IDL set to &quot;\0&quot; followed by IDL get 
+PASS button.formNoValidate: IDL set to object &quot;test-toString&quot; should not throw 
+PASS button.formNoValidate: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS button.formNoValidate: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS button.formNoValidate: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS button.formNoValidate: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS button.formNoValidate: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.formTarget: typeof IDL attribute 
+PASS button.formTarget: IDL get with DOM attribute unset 
+PASS button.formTarget: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS button.formTarget: setAttribute() to &quot;&quot; followed by IDL get 
+PASS button.formTarget: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS button.formTarget: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS button.formTarget: setAttribute() to undefined followed by getAttribute() 
+PASS button.formTarget: setAttribute() to undefined followed by IDL get 
+PASS button.formTarget: setAttribute() to 7 followed by getAttribute() 
+PASS button.formTarget: setAttribute() to 7 followed by IDL get 
+PASS button.formTarget: setAttribute() to 1.5 followed by getAttribute() 
+PASS button.formTarget: setAttribute() to 1.5 followed by IDL get 
+PASS button.formTarget: setAttribute() to true followed by getAttribute() 
+PASS button.formTarget: setAttribute() to true followed by IDL get 
+PASS button.formTarget: setAttribute() to false followed by getAttribute() 
+PASS button.formTarget: setAttribute() to false followed by IDL get 
+PASS button.formTarget: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS button.formTarget: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.formTarget: setAttribute() to NaN followed by getAttribute() 
+PASS button.formTarget: setAttribute() to NaN followed by IDL get 
+PASS button.formTarget: setAttribute() to Infinity followed by getAttribute() 
+PASS button.formTarget: setAttribute() to Infinity followed by IDL get 
+PASS button.formTarget: setAttribute() to -Infinity followed by getAttribute() 
+PASS button.formTarget: setAttribute() to -Infinity followed by IDL get 
+PASS button.formTarget: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS button.formTarget: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS button.formTarget: setAttribute() to null followed by getAttribute() 
+PASS button.formTarget: setAttribute() to null followed by IDL get 
+PASS button.formTarget: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS button.formTarget: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS button.formTarget: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS button.formTarget: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.formTarget: IDL set to &quot;&quot; should not throw 
+PASS button.formTarget: IDL set to &quot;&quot; followed by getAttribute() 
+PASS button.formTarget: IDL set to &quot;&quot; followed by IDL get 
+PASS button.formTarget: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS button.formTarget: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS button.formTarget: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS button.formTarget: IDL set to undefined should not throw 
+PASS button.formTarget: IDL set to undefined followed by getAttribute() 
+PASS button.formTarget: IDL set to undefined followed by IDL get 
+PASS button.formTarget: IDL set to 7 should not throw 
+PASS button.formTarget: IDL set to 7 followed by getAttribute() 
+PASS button.formTarget: IDL set to 7 followed by IDL get 
+PASS button.formTarget: IDL set to 1.5 should not throw 
+PASS button.formTarget: IDL set to 1.5 followed by getAttribute() 
+PASS button.formTarget: IDL set to 1.5 followed by IDL get 
+PASS button.formTarget: IDL set to true should not throw 
+PASS button.formTarget: IDL set to true followed by getAttribute() 
+PASS button.formTarget: IDL set to true followed by IDL get 
+PASS button.formTarget: IDL set to false should not throw 
+PASS button.formTarget: IDL set to false followed by getAttribute() 
+PASS button.formTarget: IDL set to false followed by IDL get 
+PASS button.formTarget: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS button.formTarget: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS button.formTarget: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.formTarget: IDL set to NaN should not throw 
+PASS button.formTarget: IDL set to NaN followed by getAttribute() 
+PASS button.formTarget: IDL set to NaN followed by IDL get 
+PASS button.formTarget: IDL set to Infinity should not throw 
+PASS button.formTarget: IDL set to Infinity followed by getAttribute() 
+PASS button.formTarget: IDL set to Infinity followed by IDL get 
+PASS button.formTarget: IDL set to -Infinity should not throw 
+PASS button.formTarget: IDL set to -Infinity followed by getAttribute() 
+PASS button.formTarget: IDL set to -Infinity followed by IDL get 
+PASS button.formTarget: IDL set to &quot;\0&quot; should not throw 
+PASS button.formTarget: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS button.formTarget: IDL set to &quot;\0&quot; followed by IDL get 
+PASS button.formTarget: IDL set to null should not throw 
+PASS button.formTarget: IDL set to null followed by getAttribute() 
+PASS button.formTarget: IDL set to null followed by IDL get 
+PASS button.formTarget: IDL set to object &quot;test-toString&quot; should not throw 
+PASS button.formTarget: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS button.formTarget: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS button.formTarget: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS button.formTarget: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS button.formTarget: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.name: typeof IDL attribute 
+PASS button.name: IDL get with DOM attribute unset 
+PASS button.name: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS button.name: setAttribute() to &quot;&quot; followed by IDL get 
+PASS button.name: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS button.name: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS button.name: setAttribute() to undefined followed by getAttribute() 
+PASS button.name: setAttribute() to undefined followed by IDL get 
+PASS button.name: setAttribute() to 7 followed by getAttribute() 
+PASS button.name: setAttribute() to 7 followed by IDL get 
+PASS button.name: setAttribute() to 1.5 followed by getAttribute() 
+PASS button.name: setAttribute() to 1.5 followed by IDL get 
+PASS button.name: setAttribute() to true followed by getAttribute() 
+PASS button.name: setAttribute() to true followed by IDL get 
+PASS button.name: setAttribute() to false followed by getAttribute() 
+PASS button.name: setAttribute() to false followed by IDL get 
+PASS button.name: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS button.name: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.name: setAttribute() to NaN followed by getAttribute() 
+PASS button.name: setAttribute() to NaN followed by IDL get 
+PASS button.name: setAttribute() to Infinity followed by getAttribute() 
+PASS button.name: setAttribute() to Infinity followed by IDL get 
+PASS button.name: setAttribute() to -Infinity followed by getAttribute() 
+PASS button.name: setAttribute() to -Infinity followed by IDL get 
+PASS button.name: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS button.name: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS button.name: setAttribute() to null followed by getAttribute() 
+PASS button.name: setAttribute() to null followed by IDL get 
+PASS button.name: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS button.name: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS button.name: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS button.name: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.name: IDL set to &quot;&quot; should not throw 
+PASS button.name: IDL set to &quot;&quot; followed by getAttribute() 
+PASS button.name: IDL set to &quot;&quot; followed by IDL get 
+PASS button.name: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS button.name: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS button.name: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS button.name: IDL set to undefined should not throw 
+PASS button.name: IDL set to undefined followed by getAttribute() 
+PASS button.name: IDL set to undefined followed by IDL get 
+PASS button.name: IDL set to 7 should not throw 
+PASS button.name: IDL set to 7 followed by getAttribute() 
+PASS button.name: IDL set to 7 followed by IDL get 
+PASS button.name: IDL set to 1.5 should not throw 
+PASS button.name: IDL set to 1.5 followed by getAttribute() 
+PASS button.name: IDL set to 1.5 followed by IDL get 
+PASS button.name: IDL set to true should not throw 
+PASS button.name: IDL set to true followed by getAttribute() 
+PASS button.name: IDL set to true followed by IDL get 
+PASS button.name: IDL set to false should not throw 
+PASS button.name: IDL set to false followed by getAttribute() 
+PASS button.name: IDL set to false followed by IDL get 
+PASS button.name: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS button.name: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS button.name: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.name: IDL set to NaN should not throw 
+PASS button.name: IDL set to NaN followed by getAttribute() 
+PASS button.name: IDL set to NaN followed by IDL get 
+PASS button.name: IDL set to Infinity should not throw 
+PASS button.name: IDL set to Infinity followed by getAttribute() 
+PASS button.name: IDL set to Infinity followed by IDL get 
+PASS button.name: IDL set to -Infinity should not throw 
+PASS button.name: IDL set to -Infinity followed by getAttribute() 
+PASS button.name: IDL set to -Infinity followed by IDL get 
+PASS button.name: IDL set to &quot;\0&quot; should not throw 
+PASS button.name: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS button.name: IDL set to &quot;\0&quot; followed by IDL get 
+PASS button.name: IDL set to null should not throw 
+PASS button.name: IDL set to null followed by getAttribute() 
+PASS button.name: IDL set to null followed by IDL get 
+PASS button.name: IDL set to object &quot;test-toString&quot; should not throw 
+PASS button.name: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS button.name: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS button.name: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS button.name: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS button.name: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.type: typeof IDL attribute 
+PASS button.type: IDL get with DOM attribute unset 
+PASS button.type: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS button.type: setAttribute() to &quot;&quot; followed by IDL get 
+PASS button.type: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS button.type: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS button.type: setAttribute() to undefined followed by getAttribute() 
+PASS button.type: setAttribute() to undefined followed by IDL get 
+PASS button.type: setAttribute() to 7 followed by getAttribute() 
+PASS button.type: setAttribute() to 7 followed by IDL get 
+PASS button.type: setAttribute() to 1.5 followed by getAttribute() 
+PASS button.type: setAttribute() to 1.5 followed by IDL get 
+PASS button.type: setAttribute() to true followed by getAttribute() 
+PASS button.type: setAttribute() to true followed by IDL get 
+PASS button.type: setAttribute() to false followed by getAttribute() 
+PASS button.type: setAttribute() to false followed by IDL get 
+PASS button.type: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS button.type: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.type: setAttribute() to NaN followed by getAttribute() 
+PASS button.type: setAttribute() to NaN followed by IDL get 
+PASS button.type: setAttribute() to Infinity followed by getAttribute() 
+PASS button.type: setAttribute() to Infinity followed by IDL get 
+PASS button.type: setAttribute() to -Infinity followed by getAttribute() 
+PASS button.type: setAttribute() to -Infinity followed by IDL get 
+PASS button.type: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS button.type: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS button.type: setAttribute() to null followed by getAttribute() 
+PASS button.type: setAttribute() to null followed by IDL get 
+PASS button.type: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS button.type: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS button.type: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS button.type: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.type: setAttribute() to &quot;submit&quot; followed by getAttribute() 
+PASS button.type: setAttribute() to &quot;submit&quot; followed by IDL get 
+PASS button.type: setAttribute() to &quot;xsubmit&quot; followed by getAttribute() 
+PASS button.type: setAttribute() to &quot;xsubmit&quot; followed by IDL get 
+PASS button.type: setAttribute() to &quot;submit\0&quot; followed by getAttribute() 
+PASS button.type: setAttribute() to &quot;submit\0&quot; followed by IDL get 
+PASS button.type: setAttribute() to &quot;ubmit&quot; followed by getAttribute() 
+PASS button.type: setAttribute() to &quot;ubmit&quot; followed by IDL get 
+PASS button.type: setAttribute() to &quot;SUBMIT&quot; followed by getAttribute() 
+PASS button.type: setAttribute() to &quot;SUBMIT&quot; followed by IDL get 
+PASS button.type: setAttribute() to &quot;reset&quot; followed by getAttribute() 
+PASS button.type: setAttribute() to &quot;reset&quot; followed by IDL get 
+PASS button.type: setAttribute() to &quot;xreset&quot; followed by getAttribute() 
+PASS button.type: setAttribute() to &quot;xreset&quot; followed by IDL get 
+PASS button.type: setAttribute() to &quot;reset\0&quot; followed by getAttribute() 
+PASS button.type: setAttribute() to &quot;reset\0&quot; followed by IDL get 
+PASS button.type: setAttribute() to &quot;eset&quot; followed by getAttribute() 
+PASS button.type: setAttribute() to &quot;eset&quot; followed by IDL get 
+PASS button.type: setAttribute() to &quot;RESET&quot; followed by getAttribute() 
+PASS button.type: setAttribute() to &quot;RESET&quot; followed by IDL get 
+PASS button.type: setAttribute() to &quot;button&quot; followed by getAttribute() 
+PASS button.type: setAttribute() to &quot;button&quot; followed by IDL get 
+PASS button.type: setAttribute() to &quot;xbutton&quot; followed by getAttribute() 
+PASS button.type: setAttribute() to &quot;xbutton&quot; followed by IDL get 
+PASS button.type: setAttribute() to &quot;button\0&quot; followed by getAttribute() 
+PASS button.type: setAttribute() to &quot;button\0&quot; followed by IDL get 
+PASS button.type: setAttribute() to &quot;utton&quot; followed by getAttribute() 
+PASS button.type: setAttribute() to &quot;utton&quot; followed by IDL get 
+PASS button.type: setAttribute() to &quot;BUTTON&quot; followed by getAttribute() 
+PASS button.type: setAttribute() to &quot;BUTTON&quot; followed by IDL get 
+PASS button.type: IDL set to &quot;&quot; should not throw 
+PASS button.type: IDL set to &quot;&quot; followed by getAttribute() 
+PASS button.type: IDL set to &quot;&quot; followed by IDL get 
+PASS button.type: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS button.type: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS button.type: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS button.type: IDL set to undefined should not throw 
+PASS button.type: IDL set to undefined followed by getAttribute() 
+PASS button.type: IDL set to undefined followed by IDL get 
+PASS button.type: IDL set to 7 should not throw 
+PASS button.type: IDL set to 7 followed by getAttribute() 
+PASS button.type: IDL set to 7 followed by IDL get 
+PASS button.type: IDL set to 1.5 should not throw 
+PASS button.type: IDL set to 1.5 followed by getAttribute() 
+PASS button.type: IDL set to 1.5 followed by IDL get 
+PASS button.type: IDL set to true should not throw 
+PASS button.type: IDL set to true followed by getAttribute() 
+PASS button.type: IDL set to true followed by IDL get 
+PASS button.type: IDL set to false should not throw 
+PASS button.type: IDL set to false followed by getAttribute() 
+PASS button.type: IDL set to false followed by IDL get 
+PASS button.type: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS button.type: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS button.type: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.type: IDL set to NaN should not throw 
+PASS button.type: IDL set to NaN followed by getAttribute() 
+PASS button.type: IDL set to NaN followed by IDL get 
+PASS button.type: IDL set to Infinity should not throw 
+PASS button.type: IDL set to Infinity followed by getAttribute() 
+PASS button.type: IDL set to Infinity followed by IDL get 
+PASS button.type: IDL set to -Infinity should not throw 
+PASS button.type: IDL set to -Infinity followed by getAttribute() 
+PASS button.type: IDL set to -Infinity followed by IDL get 
+PASS button.type: IDL set to &quot;\0&quot; should not throw 
+PASS button.type: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS button.type: IDL set to &quot;\0&quot; followed by IDL get 
+PASS button.type: IDL set to null should not throw 
+PASS button.type: IDL set to null followed by IDL get 
+PASS button.type: IDL set to object &quot;test-toString&quot; should not throw 
+PASS button.type: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS button.type: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS button.type: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS button.type: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS button.type: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.type: IDL set to &quot;submit&quot; should not throw 
+PASS button.type: IDL set to &quot;submit&quot; followed by getAttribute() 
+PASS button.type: IDL set to &quot;submit&quot; followed by IDL get 
+PASS button.type: IDL set to &quot;xsubmit&quot; should not throw 
+PASS button.type: IDL set to &quot;xsubmit&quot; followed by getAttribute() 
+PASS button.type: IDL set to &quot;xsubmit&quot; followed by IDL get 
+PASS button.type: IDL set to &quot;submit\0&quot; should not throw 
+PASS button.type: IDL set to &quot;submit\0&quot; followed by getAttribute() 
+PASS button.type: IDL set to &quot;submit\0&quot; followed by IDL get 
+PASS button.type: IDL set to &quot;ubmit&quot; should not throw 
+PASS button.type: IDL set to &quot;ubmit&quot; followed by getAttribute() 
+PASS button.type: IDL set to &quot;ubmit&quot; followed by IDL get 
+PASS button.type: IDL set to &quot;SUBMIT&quot; should not throw 
+PASS button.type: IDL set to &quot;SUBMIT&quot; followed by getAttribute() 
+PASS button.type: IDL set to &quot;SUBMIT&quot; followed by IDL get 
+PASS button.type: IDL set to &quot;reset&quot; should not throw 
+PASS button.type: IDL set to &quot;reset&quot; followed by getAttribute() 
+PASS button.type: IDL set to &quot;reset&quot; followed by IDL get 
+PASS button.type: IDL set to &quot;xreset&quot; should not throw 
+PASS button.type: IDL set to &quot;xreset&quot; followed by getAttribute() 
+PASS button.type: IDL set to &quot;xreset&quot; followed by IDL get 
+PASS button.type: IDL set to &quot;reset\0&quot; should not throw 
+PASS button.type: IDL set to &quot;reset\0&quot; followed by getAttribute() 
+PASS button.type: IDL set to &quot;reset\0&quot; followed by IDL get 
+PASS button.type: IDL set to &quot;eset&quot; should not throw 
+PASS button.type: IDL set to &quot;eset&quot; followed by getAttribute() 
+PASS button.type: IDL set to &quot;eset&quot; followed by IDL get 
+PASS button.type: IDL set to &quot;RESET&quot; should not throw 
+PASS button.type: IDL set to &quot;RESET&quot; followed by getAttribute() 
+PASS button.type: IDL set to &quot;RESET&quot; followed by IDL get 
+PASS button.type: IDL set to &quot;button&quot; should not throw 
+PASS button.type: IDL set to &quot;button&quot; followed by getAttribute() 
+PASS button.type: IDL set to &quot;button&quot; followed by IDL get 
+PASS button.type: IDL set to &quot;xbutton&quot; should not throw 
+PASS button.type: IDL set to &quot;xbutton&quot; followed by getAttribute() 
+PASS button.type: IDL set to &quot;xbutton&quot; followed by IDL get 
+PASS button.type: IDL set to &quot;button\0&quot; should not throw 
+PASS button.type: IDL set to &quot;button\0&quot; followed by getAttribute() 
+PASS button.type: IDL set to &quot;button\0&quot; followed by IDL get 
+PASS button.type: IDL set to &quot;utton&quot; should not throw 
+PASS button.type: IDL set to &quot;utton&quot; followed by getAttribute() 
+PASS button.type: IDL set to &quot;utton&quot; followed by IDL get 
+PASS button.type: IDL set to &quot;BUTTON&quot; should not throw 
+PASS button.type: IDL set to &quot;BUTTON&quot; followed by getAttribute() 
+PASS button.type: IDL set to &quot;BUTTON&quot; followed by IDL get 
+PASS button.value: typeof IDL attribute 
+PASS button.value: IDL get with DOM attribute unset 
+PASS button.value: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS button.value: setAttribute() to &quot;&quot; followed by IDL get 
+PASS button.value: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS button.value: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS button.value: setAttribute() to undefined followed by getAttribute() 
+PASS button.value: setAttribute() to undefined followed by IDL get 
+PASS button.value: setAttribute() to 7 followed by getAttribute() 
+PASS button.value: setAttribute() to 7 followed by IDL get 
+PASS button.value: setAttribute() to 1.5 followed by getAttribute() 
+PASS button.value: setAttribute() to 1.5 followed by IDL get 
+PASS button.value: setAttribute() to true followed by getAttribute() 
+PASS button.value: setAttribute() to true followed by IDL get 
+PASS button.value: setAttribute() to false followed by getAttribute() 
+PASS button.value: setAttribute() to false followed by IDL get 
+PASS button.value: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS button.value: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.value: setAttribute() to NaN followed by getAttribute() 
+PASS button.value: setAttribute() to NaN followed by IDL get 
+PASS button.value: setAttribute() to Infinity followed by getAttribute() 
+PASS button.value: setAttribute() to Infinity followed by IDL get 
+PASS button.value: setAttribute() to -Infinity followed by getAttribute() 
+PASS button.value: setAttribute() to -Infinity followed by IDL get 
+PASS button.value: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS button.value: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS button.value: setAttribute() to null followed by getAttribute() 
+PASS button.value: setAttribute() to null followed by IDL get 
+PASS button.value: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS button.value: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS button.value: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS button.value: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS button.value: IDL set to &quot;&quot; should not throw 
+PASS button.value: IDL set to &quot;&quot; followed by getAttribute() 
+PASS button.value: IDL set to &quot;&quot; followed by IDL get 
+PASS button.value: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS button.value: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS button.value: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS button.value: IDL set to undefined should not throw 
+PASS button.value: IDL set to undefined followed by getAttribute() 
+PASS button.value: IDL set to undefined followed by IDL get 
+PASS button.value: IDL set to 7 should not throw 
+PASS button.value: IDL set to 7 followed by getAttribute() 
+PASS button.value: IDL set to 7 followed by IDL get 
+PASS button.value: IDL set to 1.5 should not throw 
+PASS button.value: IDL set to 1.5 followed by getAttribute() 
+PASS button.value: IDL set to 1.5 followed by IDL get 
+PASS button.value: IDL set to true should not throw 
+PASS button.value: IDL set to true followed by getAttribute() 
+PASS button.value: IDL set to true followed by IDL get 
+PASS button.value: IDL set to false should not throw 
+PASS button.value: IDL set to false followed by getAttribute() 
+PASS button.value: IDL set to false followed by IDL get 
+PASS button.value: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS button.value: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS button.value: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS button.value: IDL set to NaN should not throw 
+PASS button.value: IDL set to NaN followed by getAttribute() 
+PASS button.value: IDL set to NaN followed by IDL get 
+PASS button.value: IDL set to Infinity should not throw 
+PASS button.value: IDL set to Infinity followed by getAttribute() 
+PASS button.value: IDL set to Infinity followed by IDL get 
+PASS button.value: IDL set to -Infinity should not throw 
+PASS button.value: IDL set to -Infinity followed by getAttribute() 
+PASS button.value: IDL set to -Infinity followed by IDL get 
+PASS button.value: IDL set to &quot;\0&quot; should not throw 
+PASS button.value: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS button.value: IDL set to &quot;\0&quot; followed by IDL get 
+PASS button.value: IDL set to null should not throw 
+PASS button.value: IDL set to null followed by getAttribute() 
+PASS button.value: IDL set to null followed by IDL get 
+PASS button.value: IDL set to object &quot;test-toString&quot; should not throw 
+PASS button.value: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS button.value: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS button.value: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS button.value: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS button.value: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS select.title: typeof IDL attribute 
+PASS select.title: IDL get with DOM attribute unset 
+PASS select.title: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS select.title: setAttribute() to &quot;&quot; followed by IDL get 
+PASS select.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS select.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS select.title: setAttribute() to undefined followed by getAttribute() 
+PASS select.title: setAttribute() to undefined followed by IDL get 
+PASS select.title: setAttribute() to 7 followed by getAttribute() 
+PASS select.title: setAttribute() to 7 followed by IDL get 
+PASS select.title: setAttribute() to 1.5 followed by getAttribute() 
+PASS select.title: setAttribute() to 1.5 followed by IDL get 
+PASS select.title: setAttribute() to true followed by getAttribute() 
+PASS select.title: setAttribute() to true followed by IDL get 
+PASS select.title: setAttribute() to false followed by getAttribute() 
+PASS select.title: setAttribute() to false followed by IDL get 
+PASS select.title: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS select.title: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS select.title: setAttribute() to NaN followed by getAttribute() 
+PASS select.title: setAttribute() to NaN followed by IDL get 
+PASS select.title: setAttribute() to Infinity followed by getAttribute() 
+PASS select.title: setAttribute() to Infinity followed by IDL get 
+PASS select.title: setAttribute() to -Infinity followed by getAttribute() 
+PASS select.title: setAttribute() to -Infinity followed by IDL get 
+PASS select.title: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS select.title: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS select.title: setAttribute() to null followed by getAttribute() 
+PASS select.title: setAttribute() to null followed by IDL get 
+PASS select.title: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS select.title: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS select.title: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS select.title: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS select.title: IDL set to &quot;&quot; should not throw 
+PASS select.title: IDL set to &quot;&quot; followed by getAttribute() 
+PASS select.title: IDL set to &quot;&quot; followed by IDL get 
+PASS select.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS select.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS select.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS select.title: IDL set to undefined should not throw 
+PASS select.title: IDL set to undefined followed by getAttribute() 
+PASS select.title: IDL set to undefined followed by IDL get 
+PASS select.title: IDL set to 7 should not throw 
+PASS select.title: IDL set to 7 followed by getAttribute() 
+PASS select.title: IDL set to 7 followed by IDL get 
+PASS select.title: IDL set to 1.5 should not throw 
+PASS select.title: IDL set to 1.5 followed by getAttribute() 
+PASS select.title: IDL set to 1.5 followed by IDL get 
+PASS select.title: IDL set to true should not throw 
+PASS select.title: IDL set to true followed by getAttribute() 
+PASS select.title: IDL set to true followed by IDL get 
+PASS select.title: IDL set to false should not throw 
+PASS select.title: IDL set to false followed by getAttribute() 
+PASS select.title: IDL set to false followed by IDL get 
+PASS select.title: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS select.title: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS select.title: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS select.title: IDL set to NaN should not throw 
+PASS select.title: IDL set to NaN followed by getAttribute() 
+PASS select.title: IDL set to NaN followed by IDL get 
+PASS select.title: IDL set to Infinity should not throw 
+PASS select.title: IDL set to Infinity followed by getAttribute() 
+PASS select.title: IDL set to Infinity followed by IDL get 
+PASS select.title: IDL set to -Infinity should not throw 
+PASS select.title: IDL set to -Infinity followed by getAttribute() 
+PASS select.title: IDL set to -Infinity followed by IDL get 
+PASS select.title: IDL set to &quot;\0&quot; should not throw 
+PASS select.title: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS select.title: IDL set to &quot;\0&quot; followed by IDL get 
+PASS select.title: IDL set to null should not throw 
+PASS select.title: IDL set to null followed by getAttribute() 
+PASS select.title: IDL set to null followed by IDL get 
+PASS select.title: IDL set to object &quot;test-toString&quot; should not throw 
+PASS select.title: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS select.title: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS select.title: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS select.title: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS select.title: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS select.lang: typeof IDL attribute 
+PASS select.lang: IDL get with DOM attribute unset 
+PASS select.lang: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS select.lang: setAttribute() to &quot;&quot; followed by IDL get 
+PASS select.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS select.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS select.lang: setAttribute() to undefined followed by getAttribute() 
+PASS select.lang: setAttribute() to undefined followed by IDL get 
+PASS select.lang: setAttribute() to 7 followed by getAttribute() 
+PASS select.lang: setAttribute() to 7 followed by IDL get 
+PASS select.lang: setAttribute() to 1.5 followed by getAttribute() 
+PASS select.lang: setAttribute() to 1.5 followed by IDL get 
+PASS select.lang: setAttribute() to true followed by getAttribute() 
+PASS select.lang: setAttribute() to true followed by IDL get 
+PASS select.lang: setAttribute() to false followed by getAttribute() 
+PASS select.lang: setAttribute() to false followed by IDL get 
+PASS select.lang: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS select.lang: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS select.lang: setAttribute() to NaN followed by getAttribute() 
+PASS select.lang: setAttribute() to NaN followed by IDL get 
+PASS select.lang: setAttribute() to Infinity followed by getAttribute() 
+PASS select.lang: setAttribute() to Infinity followed by IDL get 
+PASS select.lang: setAttribute() to -Infinity followed by getAttribute() 
+PASS select.lang: setAttribute() to -Infinity followed by IDL get 
+PASS select.lang: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS select.lang: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS select.lang: setAttribute() to null followed by getAttribute() 
+PASS select.lang: setAttribute() to null followed by IDL get 
+PASS select.lang: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS select.lang: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS select.lang: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS select.lang: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS select.lang: IDL set to &quot;&quot; should not throw 
+PASS select.lang: IDL set to &quot;&quot; followed by getAttribute() 
+PASS select.lang: IDL set to &quot;&quot; followed by IDL get 
+PASS select.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS select.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS select.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS select.lang: IDL set to undefined should not throw 
+PASS select.lang: IDL set to undefined followed by getAttribute() 
+PASS select.lang: IDL set to undefined followed by IDL get 
+PASS select.lang: IDL set to 7 should not throw 
+PASS select.lang: IDL set to 7 followed by getAttribute() 
+PASS select.lang: IDL set to 7 followed by IDL get 
+PASS select.lang: IDL set to 1.5 should not throw 
+PASS select.lang: IDL set to 1.5 followed by getAttribute() 
+PASS select.lang: IDL set to 1.5 followed by IDL get 
+PASS select.lang: IDL set to true should not throw 
+PASS select.lang: IDL set to true followed by getAttribute() 
+PASS select.lang: IDL set to true followed by IDL get 
+PASS select.lang: IDL set to false should not throw 
+PASS select.lang: IDL set to false followed by getAttribute() 
+PASS select.lang: IDL set to false followed by IDL get 
+PASS select.lang: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS select.lang: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS select.lang: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS select.lang: IDL set to NaN should not throw 
+PASS select.lang: IDL set to NaN followed by getAttribute() 
+PASS select.lang: IDL set to NaN followed by IDL get 
+PASS select.lang: IDL set to Infinity should not throw 
+PASS select.lang: IDL set to Infinity followed by getAttribute() 
+PASS select.lang: IDL set to Infinity followed by IDL get 
+PASS select.lang: IDL set to -Infinity should not throw 
+PASS select.lang: IDL set to -Infinity followed by getAttribute() 
+PASS select.lang: IDL set to -Infinity followed by IDL get 
+PASS select.lang: IDL set to &quot;\0&quot; should not throw 
+PASS select.lang: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS select.lang: IDL set to &quot;\0&quot; followed by IDL get 
+PASS select.lang: IDL set to null should not throw 
+PASS select.lang: IDL set to null followed by getAttribute() 
+PASS select.lang: IDL set to null followed by IDL get 
+PASS select.lang: IDL set to object &quot;test-toString&quot; should not throw 
+PASS select.lang: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS select.lang: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS select.lang: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS select.lang: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS select.lang: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS select.dir: typeof IDL attribute 
+PASS select.dir: IDL get with DOM attribute unset 
+PASS select.dir: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS select.dir: setAttribute() to &quot;&quot; followed by IDL get 
+PASS select.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS select.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS select.dir: setAttribute() to undefined followed by getAttribute() 
+PASS select.dir: setAttribute() to undefined followed by IDL get 
+PASS select.dir: setAttribute() to 7 followed by getAttribute() 
+PASS select.dir: setAttribute() to 7 followed by IDL get 
+PASS select.dir: setAttribute() to 1.5 followed by getAttribute() 
+PASS select.dir: setAttribute() to 1.5 followed by IDL get 
+PASS select.dir: setAttribute() to true followed by getAttribute() 
+PASS select.dir: setAttribute() to true followed by IDL get 
+PASS select.dir: setAttribute() to false followed by getAttribute() 
+PASS select.dir: setAttribute() to false followed by IDL get 
+PASS select.dir: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS select.dir: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS select.dir: setAttribute() to NaN followed by getAttribute() 
+PASS select.dir: setAttribute() to NaN followed by IDL get 
+PASS select.dir: setAttribute() to Infinity followed by getAttribute() 
+PASS select.dir: setAttribute() to Infinity followed by IDL get 
+PASS select.dir: setAttribute() to -Infinity followed by getAttribute() 
+PASS select.dir: setAttribute() to -Infinity followed by IDL get 
+PASS select.dir: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS select.dir: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS select.dir: setAttribute() to null followed by getAttribute() 
+PASS select.dir: setAttribute() to null followed by IDL get 
+PASS select.dir: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS select.dir: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS select.dir: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS select.dir: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS select.dir: setAttribute() to &quot;ltr&quot; followed by getAttribute() 
+PASS select.dir: setAttribute() to &quot;ltr&quot; followed by IDL get 
+PASS select.dir: setAttribute() to &quot;xltr&quot; followed by getAttribute() 
+PASS select.dir: setAttribute() to &quot;xltr&quot; followed by IDL get 
+PASS select.dir: setAttribute() to &quot;ltr\0&quot; followed by getAttribute() 
+PASS select.dir: setAttribute() to &quot;ltr\0&quot; followed by IDL get 
+PASS select.dir: setAttribute() to &quot;tr&quot; followed by getAttribute() 
+PASS select.dir: setAttribute() to &quot;tr&quot; followed by IDL get 
+PASS select.dir: setAttribute() to &quot;LTR&quot; followed by getAttribute() 
+PASS select.dir: setAttribute() to &quot;LTR&quot; followed by IDL get 
+PASS select.dir: setAttribute() to &quot;rtl&quot; followed by getAttribute() 
+PASS select.dir: setAttribute() to &quot;rtl&quot; followed by IDL get 
+PASS select.dir: setAttribute() to &quot;xrtl&quot; followed by getAttribute() 
+PASS select.dir: setAttribute() to &quot;xrtl&quot; followed by IDL get 
+PASS select.dir: setAttribute() to &quot;rtl\0&quot; followed by getAttribute() 
+PASS select.dir: setAttribute() to &quot;rtl\0&quot; followed by IDL get 
+PASS select.dir: setAttribute() to &quot;tl&quot; followed by getAttribute() 
+PASS select.dir: setAttribute() to &quot;tl&quot; followed by IDL get 
+PASS select.dir: setAttribute() to &quot;RTL&quot; followed by getAttribute() 
+PASS select.dir: setAttribute() to &quot;RTL&quot; followed by IDL get 
+PASS select.dir: setAttribute() to &quot;auto&quot; followed by getAttribute() 
+PASS select.dir: setAttribute() to &quot;auto&quot; followed by IDL get 
+PASS select.dir: setAttribute() to &quot;xauto&quot; followed by getAttribute() 
+PASS select.dir: setAttribute() to &quot;xauto&quot; followed by IDL get 
+PASS select.dir: setAttribute() to &quot;auto\0&quot; followed by getAttribute() 
+PASS select.dir: setAttribute() to &quot;auto\0&quot; followed by IDL get 
+PASS select.dir: setAttribute() to &quot;uto&quot; followed by getAttribute() 
+PASS select.dir: setAttribute() to &quot;uto&quot; followed by IDL get 
+PASS select.dir: setAttribute() to &quot;AUTO&quot; followed by getAttribute() 
+PASS select.dir: setAttribute() to &quot;AUTO&quot; followed by IDL get 
+PASS select.dir: IDL set to &quot;&quot; should not throw 
+PASS select.dir: IDL set to &quot;&quot; followed by getAttribute() 
+PASS select.dir: IDL set to &quot;&quot; followed by IDL get 
+PASS select.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS select.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS select.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS select.dir: IDL set to undefined should not throw 
+PASS select.dir: IDL set to undefined followed by getAttribute() 
+PASS select.dir: IDL set to undefined followed by IDL get 
+PASS select.dir: IDL set to 7 should not throw 
+PASS select.dir: IDL set to 7 followed by getAttribute() 
+PASS select.dir: IDL set to 7 followed by IDL get 
+PASS select.dir: IDL set to 1.5 should not throw 
+PASS select.dir: IDL set to 1.5 followed by getAttribute() 
+PASS select.dir: IDL set to 1.5 followed by IDL get 
+PASS select.dir: IDL set to true should not throw 
+PASS select.dir: IDL set to true followed by getAttribute() 
+PASS select.dir: IDL set to true followed by IDL get 
+PASS select.dir: IDL set to false should not throw 
+PASS select.dir: IDL set to false followed by getAttribute() 
+PASS select.dir: IDL set to false followed by IDL get 
+PASS select.dir: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS select.dir: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS select.dir: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS select.dir: IDL set to NaN should not throw 
+PASS select.dir: IDL set to NaN followed by getAttribute() 
+PASS select.dir: IDL set to NaN followed by IDL get 
+PASS select.dir: IDL set to Infinity should not throw 
+PASS select.dir: IDL set to Infinity followed by getAttribute() 
+PASS select.dir: IDL set to Infinity followed by IDL get 
+PASS select.dir: IDL set to -Infinity should not throw 
+PASS select.dir: IDL set to -Infinity followed by getAttribute() 
+PASS select.dir: IDL set to -Infinity followed by IDL get 
+PASS select.dir: IDL set to &quot;\0&quot; should not throw 
+PASS select.dir: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS select.dir: IDL set to &quot;\0&quot; followed by IDL get 
+PASS select.dir: IDL set to null should not throw 
+PASS select.dir: IDL set to null followed by IDL get 
+PASS select.dir: IDL set to object &quot;test-toString&quot; should not throw 
+PASS select.dir: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS select.dir: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS select.dir: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS select.dir: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS select.dir: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS select.dir: IDL set to &quot;ltr&quot; should not throw 
+PASS select.dir: IDL set to &quot;ltr&quot; followed by getAttribute() 
+PASS select.dir: IDL set to &quot;ltr&quot; followed by IDL get 
+PASS select.dir: IDL set to &quot;xltr&quot; should not throw 
+PASS select.dir: IDL set to &quot;xltr&quot; followed by getAttribute() 
+PASS select.dir: IDL set to &quot;xltr&quot; followed by IDL get 
+PASS select.dir: IDL set to &quot;ltr\0&quot; should not throw 
+PASS select.dir: IDL set to &quot;ltr\0&quot; followed by getAttribute() 
+PASS select.dir: IDL set to &quot;ltr\0&quot; followed by IDL get 
+PASS select.dir: IDL set to &quot;tr&quot; should not throw 
+PASS select.dir: IDL set to &quot;tr&quot; followed by getAttribute() 
+PASS select.dir: IDL set to &quot;tr&quot; followed by IDL get 
+PASS select.dir: IDL set to &quot;LTR&quot; should not throw 
+PASS select.dir: IDL set to &quot;LTR&quot; followed by getAttribute() 
+PASS select.dir: IDL set to &quot;LTR&quot; followed by IDL get 
+PASS select.dir: IDL set to &quot;rtl&quot; should not throw 
+PASS select.dir: IDL set to &quot;rtl&quot; followed by getAttribute() 
+PASS select.dir: IDL set to &quot;rtl&quot; followed by IDL get 
+PASS select.dir: IDL set to &quot;xrtl&quot; should not throw 
+PASS select.dir: IDL set to &quot;xrtl&quot; followed by getAttribute() 
+PASS select.dir: IDL set to &quot;xrtl&quot; followed by IDL get 
+PASS select.dir: IDL set to &quot;rtl\0&quot; should not throw 
+PASS select.dir: IDL set to &quot;rtl\0&quot; followed by getAttribute() 
+PASS select.dir: IDL set to &quot;rtl\0&quot; followed by IDL get 
+PASS select.dir: IDL set to &quot;tl&quot; should not throw 
+PASS select.dir: IDL set to &quot;tl&quot; followed by getAttribute() 
+PASS select.dir: IDL set to &quot;tl&quot; followed by IDL get 
+PASS select.dir: IDL set to &quot;RTL&quot; should not throw 
+PASS select.dir: IDL set to &quot;RTL&quot; followed by getAttribute() 
+PASS select.dir: IDL set to &quot;RTL&quot; followed by IDL get 
+PASS select.dir: IDL set to &quot;auto&quot; should not throw 
+PASS select.dir: IDL set to &quot;auto&quot; followed by getAttribute() 
+PASS select.dir: IDL set to &quot;auto&quot; followed by IDL get 
+PASS select.dir: IDL set to &quot;xauto&quot; should not throw 
+PASS select.dir: IDL set to &quot;xauto&quot; followed by getAttribute() 
+PASS select.dir: IDL set to &quot;xauto&quot; followed by IDL get 
+PASS select.dir: IDL set to &quot;auto\0&quot; should not throw 
+PASS select.dir: IDL set to &quot;auto\0&quot; followed by getAttribute() 
+PASS select.dir: IDL set to &quot;auto\0&quot; followed by IDL get 
+PASS select.dir: IDL set to &quot;uto&quot; should not throw 
+PASS select.dir: IDL set to &quot;uto&quot; followed by getAttribute() 
+PASS select.dir: IDL set to &quot;uto&quot; followed by IDL get 
+PASS select.dir: IDL set to &quot;AUTO&quot; should not throw 
+PASS select.dir: IDL set to &quot;AUTO&quot; followed by getAttribute() 
+PASS select.dir: IDL set to &quot;AUTO&quot; followed by IDL get 
+PASS select.className (&lt;select class&gt;): typeof IDL attribute 
+PASS select.className (&lt;select class&gt;): IDL get with DOM attribute unset 
+PASS select.className (&lt;select class&gt;): setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): setAttribute() to &quot;&quot; followed by IDL get 
+PASS select.className (&lt;select class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS select.className (&lt;select class&gt;): setAttribute() to undefined followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): setAttribute() to undefined followed by IDL get 
+PASS select.className (&lt;select class&gt;): setAttribute() to 7 followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): setAttribute() to 7 followed by IDL get 
+PASS select.className (&lt;select class&gt;): setAttribute() to 1.5 followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): setAttribute() to 1.5 followed by IDL get 
+PASS select.className (&lt;select class&gt;): setAttribute() to true followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): setAttribute() to true followed by IDL get 
+PASS select.className (&lt;select class&gt;): setAttribute() to false followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): setAttribute() to false followed by IDL get 
+PASS select.className (&lt;select class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS select.className (&lt;select class&gt;): setAttribute() to NaN followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): setAttribute() to NaN followed by IDL get 
+PASS select.className (&lt;select class&gt;): setAttribute() to Infinity followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): setAttribute() to Infinity followed by IDL get 
+PASS select.className (&lt;select class&gt;): setAttribute() to -Infinity followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): setAttribute() to -Infinity followed by IDL get 
+PASS select.className (&lt;select class&gt;): setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS select.className (&lt;select class&gt;): setAttribute() to null followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): setAttribute() to null followed by IDL get 
+PASS select.className (&lt;select class&gt;): setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS select.className (&lt;select class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS select.className (&lt;select class&gt;): IDL set to &quot;&quot; should not throw 
+PASS select.className (&lt;select class&gt;): IDL set to &quot;&quot; followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): IDL set to &quot;&quot; followed by IDL get 
+PASS select.className (&lt;select class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS select.className (&lt;select class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS select.className (&lt;select class&gt;): IDL set to undefined should not throw 
+PASS select.className (&lt;select class&gt;): IDL set to undefined followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): IDL set to undefined followed by IDL get 
+PASS select.className (&lt;select class&gt;): IDL set to 7 should not throw 
+PASS select.className (&lt;select class&gt;): IDL set to 7 followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): IDL set to 7 followed by IDL get 
+PASS select.className (&lt;select class&gt;): IDL set to 1.5 should not throw 
+PASS select.className (&lt;select class&gt;): IDL set to 1.5 followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): IDL set to 1.5 followed by IDL get 
+PASS select.className (&lt;select class&gt;): IDL set to true should not throw 
+PASS select.className (&lt;select class&gt;): IDL set to true followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): IDL set to true followed by IDL get 
+PASS select.className (&lt;select class&gt;): IDL set to false should not throw 
+PASS select.className (&lt;select class&gt;): IDL set to false followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): IDL set to false followed by IDL get 
+PASS select.className (&lt;select class&gt;): IDL set to object &quot;[object Object]&quot; should not throw 
+PASS select.className (&lt;select class&gt;): IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS select.className (&lt;select class&gt;): IDL set to NaN should not throw 
+PASS select.className (&lt;select class&gt;): IDL set to NaN followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): IDL set to NaN followed by IDL get 
+PASS select.className (&lt;select class&gt;): IDL set to Infinity should not throw 
+PASS select.className (&lt;select class&gt;): IDL set to Infinity followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): IDL set to Infinity followed by IDL get 
+PASS select.className (&lt;select class&gt;): IDL set to -Infinity should not throw 
+PASS select.className (&lt;select class&gt;): IDL set to -Infinity followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): IDL set to -Infinity followed by IDL get 
+PASS select.className (&lt;select class&gt;): IDL set to &quot;\0&quot; should not throw 
+PASS select.className (&lt;select class&gt;): IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): IDL set to &quot;\0&quot; followed by IDL get 
+PASS select.className (&lt;select class&gt;): IDL set to null should not throw 
+PASS select.className (&lt;select class&gt;): IDL set to null followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): IDL set to null followed by IDL get 
+PASS select.className (&lt;select class&gt;): IDL set to object &quot;test-toString&quot; should not throw 
+PASS select.className (&lt;select class&gt;): IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS select.className (&lt;select class&gt;): IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS select.className (&lt;select class&gt;): IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS select.className (&lt;select class&gt;): IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS select.hidden: typeof IDL attribute 
+PASS select.hidden: IDL get with DOM attribute unset 
+PASS select.hidden: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS select.hidden: setAttribute() to &quot;&quot; followed by IDL get 
+PASS select.hidden: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS select.hidden: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS select.hidden: setAttribute() to undefined followed by getAttribute() 
+PASS select.hidden: setAttribute() to undefined followed by IDL get 
+PASS select.hidden: setAttribute() to null followed by getAttribute() 
+PASS select.hidden: setAttribute() to null followed by IDL get 
+PASS select.hidden: setAttribute() to 7 followed by getAttribute() 
+PASS select.hidden: setAttribute() to 7 followed by IDL get 
+PASS select.hidden: setAttribute() to 1.5 followed by getAttribute() 
+PASS select.hidden: setAttribute() to 1.5 followed by IDL get 
+PASS select.hidden: setAttribute() to true followed by getAttribute() 
+PASS select.hidden: setAttribute() to true followed by IDL get 
+PASS select.hidden: setAttribute() to false followed by getAttribute() 
+PASS select.hidden: setAttribute() to false followed by IDL get 
+PASS select.hidden: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS select.hidden: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS select.hidden: setAttribute() to NaN followed by getAttribute() 
+PASS select.hidden: setAttribute() to NaN followed by IDL get 
+PASS select.hidden: setAttribute() to Infinity followed by getAttribute() 
+PASS select.hidden: setAttribute() to Infinity followed by IDL get 
+PASS select.hidden: setAttribute() to -Infinity followed by getAttribute() 
+PASS select.hidden: setAttribute() to -Infinity followed by IDL get 
+PASS select.hidden: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS select.hidden: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS select.hidden: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS select.hidden: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS select.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS select.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS select.hidden: setAttribute() to &quot;hidden&quot; followed by getAttribute() 
+PASS select.hidden: setAttribute() to &quot;hidden&quot; followed by IDL get 
+PASS select.hidden: IDL set to &quot;&quot; should not throw 
+PASS select.hidden: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS select.hidden: IDL set to &quot;&quot; followed by IDL get 
+PASS select.hidden: IDL set to &quot; foo &quot; should not throw 
+PASS select.hidden: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS select.hidden: IDL set to &quot; foo &quot; followed by IDL get 
+PASS select.hidden: IDL set to undefined should not throw 
+PASS select.hidden: IDL set to undefined followed by hasAttribute() 
+PASS select.hidden: IDL set to undefined followed by IDL get 
+PASS select.hidden: IDL set to null should not throw 
+PASS select.hidden: IDL set to null followed by hasAttribute() 
+PASS select.hidden: IDL set to null followed by IDL get 
+PASS select.hidden: IDL set to 7 should not throw 
+PASS select.hidden: IDL set to 7 followed by hasAttribute() 
+PASS select.hidden: IDL set to 7 followed by IDL get 
+PASS select.hidden: IDL set to 1.5 should not throw 
+PASS select.hidden: IDL set to 1.5 followed by hasAttribute() 
+PASS select.hidden: IDL set to 1.5 followed by IDL get 
+PASS select.hidden: IDL set to true should not throw 
+PASS select.hidden: IDL set to true followed by hasAttribute() 
+PASS select.hidden: IDL set to true followed by IDL get 
+PASS select.hidden: IDL set to false should not throw 
+PASS select.hidden: IDL set to false followed by hasAttribute() 
+PASS select.hidden: IDL set to false followed by IDL get 
+PASS select.hidden: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS select.hidden: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS select.hidden: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS select.hidden: IDL set to NaN should not throw 
+PASS select.hidden: IDL set to NaN followed by hasAttribute() 
+PASS select.hidden: IDL set to NaN followed by IDL get 
+PASS select.hidden: IDL set to Infinity should not throw 
+PASS select.hidden: IDL set to Infinity followed by hasAttribute() 
+PASS select.hidden: IDL set to Infinity followed by IDL get 
+PASS select.hidden: IDL set to -Infinity should not throw 
+PASS select.hidden: IDL set to -Infinity followed by hasAttribute() 
+PASS select.hidden: IDL set to -Infinity followed by IDL get 
+PASS select.hidden: IDL set to &quot;\0&quot; should not throw 
+PASS select.hidden: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS select.hidden: IDL set to &quot;\0&quot; followed by IDL get 
+PASS select.hidden: IDL set to object &quot;test-toString&quot; should not throw 
+PASS select.hidden: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS select.hidden: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS select.hidden: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS select.hidden: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS select.hidden: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS select.accessKey: typeof IDL attribute 
+PASS select.accessKey: IDL get with DOM attribute unset 
+PASS select.accessKey: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS select.accessKey: setAttribute() to &quot;&quot; followed by IDL get 
+PASS select.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS select.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS select.accessKey: setAttribute() to undefined followed by getAttribute() 
+PASS select.accessKey: setAttribute() to undefined followed by IDL get 
+PASS select.accessKey: setAttribute() to 7 followed by getAttribute() 
+PASS select.accessKey: setAttribute() to 7 followed by IDL get 
+PASS select.accessKey: setAttribute() to 1.5 followed by getAttribute() 
+PASS select.accessKey: setAttribute() to 1.5 followed by IDL get 
+PASS select.accessKey: setAttribute() to true followed by getAttribute() 
+PASS select.accessKey: setAttribute() to true followed by IDL get 
+PASS select.accessKey: setAttribute() to false followed by getAttribute() 
+PASS select.accessKey: setAttribute() to false followed by IDL get 
+PASS select.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS select.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS select.accessKey: setAttribute() to NaN followed by getAttribute() 
+PASS select.accessKey: setAttribute() to NaN followed by IDL get 
+PASS select.accessKey: setAttribute() to Infinity followed by getAttribute() 
+PASS select.accessKey: setAttribute() to Infinity followed by IDL get 
+PASS select.accessKey: setAttribute() to -Infinity followed by getAttribute() 
+PASS select.accessKey: setAttribute() to -Infinity followed by IDL get 
+PASS select.accessKey: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS select.accessKey: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS select.accessKey: setAttribute() to null followed by getAttribute() 
+PASS select.accessKey: setAttribute() to null followed by IDL get 
+PASS select.accessKey: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS select.accessKey: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS select.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS select.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS select.accessKey: IDL set to &quot;&quot; should not throw 
+PASS select.accessKey: IDL set to &quot;&quot; followed by getAttribute() 
+PASS select.accessKey: IDL set to &quot;&quot; followed by IDL get 
+PASS select.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS select.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS select.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS select.accessKey: IDL set to undefined should not throw 
+PASS select.accessKey: IDL set to undefined followed by getAttribute() 
+PASS select.accessKey: IDL set to undefined followed by IDL get 
+PASS select.accessKey: IDL set to 7 should not throw 
+PASS select.accessKey: IDL set to 7 followed by getAttribute() 
+PASS select.accessKey: IDL set to 7 followed by IDL get 
+PASS select.accessKey: IDL set to 1.5 should not throw 
+PASS select.accessKey: IDL set to 1.5 followed by getAttribute() 
+PASS select.accessKey: IDL set to 1.5 followed by IDL get 
+PASS select.accessKey: IDL set to true should not throw 
+PASS select.accessKey: IDL set to true followed by getAttribute() 
+PASS select.accessKey: IDL set to true followed by IDL get 
+PASS select.accessKey: IDL set to false should not throw 
+PASS select.accessKey: IDL set to false followed by getAttribute() 
+PASS select.accessKey: IDL set to false followed by IDL get 
+PASS select.accessKey: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS select.accessKey: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS select.accessKey: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS select.accessKey: IDL set to NaN should not throw 
+PASS select.accessKey: IDL set to NaN followed by getAttribute() 
+PASS select.accessKey: IDL set to NaN followed by IDL get 
+PASS select.accessKey: IDL set to Infinity should not throw 
+PASS select.accessKey: IDL set to Infinity followed by getAttribute() 
+PASS select.accessKey: IDL set to Infinity followed by IDL get 
+PASS select.accessKey: IDL set to -Infinity should not throw 
+PASS select.accessKey: IDL set to -Infinity followed by getAttribute() 
+PASS select.accessKey: IDL set to -Infinity followed by IDL get 
+PASS select.accessKey: IDL set to &quot;\0&quot; should not throw 
+PASS select.accessKey: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS select.accessKey: IDL set to &quot;\0&quot; followed by IDL get 
+PASS select.accessKey: IDL set to null should not throw 
+PASS select.accessKey: IDL set to null followed by getAttribute() 
+PASS select.accessKey: IDL set to null followed by IDL get 
+PASS select.accessKey: IDL set to object &quot;test-toString&quot; should not throw 
+PASS select.accessKey: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS select.accessKey: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS select.accessKey: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS select.accessKey: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS select.accessKey: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS select.tabIndex: typeof IDL attribute 
+PASS select.tabIndex: setAttribute() to -36 followed by getAttribute() 
+PASS select.tabIndex: setAttribute() to -36 followed by IDL get 
+PASS select.tabIndex: setAttribute() to -1 followed by getAttribute() 
+PASS select.tabIndex: setAttribute() to -1 followed by IDL get 
+PASS select.tabIndex: setAttribute() to 0 followed by getAttribute() 
+PASS select.tabIndex: setAttribute() to 0 followed by IDL get 
+PASS select.tabIndex: setAttribute() to 1 followed by getAttribute() 
+PASS select.tabIndex: setAttribute() to 1 followed by IDL get 
+PASS select.tabIndex: setAttribute() to 2147483647 followed by getAttribute() 
+PASS select.tabIndex: setAttribute() to 2147483647 followed by IDL get 
+PASS select.tabIndex: setAttribute() to -2147483648 followed by getAttribute() 
+PASS select.tabIndex: setAttribute() to -2147483648 followed by IDL get 
+PASS select.tabIndex: setAttribute() to &quot;-1&quot; followed by getAttribute() 
+PASS select.tabIndex: setAttribute() to &quot;-1&quot; followed by IDL get 
+PASS select.tabIndex: setAttribute() to &quot;-0&quot; followed by getAttribute() 
+PASS select.tabIndex: setAttribute() to &quot;-0&quot; followed by IDL get 
+PASS select.tabIndex: setAttribute() to &quot;0&quot; followed by getAttribute() 
+PASS select.tabIndex: setAttribute() to &quot;0&quot; followed by IDL get 
+PASS select.tabIndex: setAttribute() to &quot;1&quot; followed by getAttribute() 
+PASS select.tabIndex: setAttribute() to &quot;1&quot; followed by IDL get 
+PASS select.tabIndex: setAttribute() to &quot;\t7&quot; followed by getAttribute() 
+PASS select.tabIndex: setAttribute() to &quot;\t7&quot; followed by IDL get 
+PASS select.tabIndex: setAttribute() to &quot;\f7&quot; followed by getAttribute() 
+PASS select.tabIndex: setAttribute() to &quot;\f7&quot; followed by IDL get 
+PASS select.tabIndex: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS select.tabIndex: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS select.tabIndex: setAttribute() to &quot;\n7&quot; followed by getAttribute() 
+PASS select.tabIndex: setAttribute() to &quot;\n7&quot; followed by IDL get 
+PASS select.tabIndex: setAttribute() to &quot;\r7&quot; followed by getAttribute() 
+PASS select.tabIndex: setAttribute() to &quot;\r7&quot; followed by IDL get 
+PASS select.tabIndex: setAttribute() to 1.5 followed by getAttribute() 
+PASS select.tabIndex: setAttribute() to 1.5 followed by IDL get 
+PASS select.tabIndex: setAttribute() to object &quot;2&quot; followed by getAttribute() 
+PASS select.tabIndex: setAttribute() to object &quot;2&quot; followed by IDL get 
+PASS select.tabIndex: IDL set to -36 should not throw 
+PASS select.tabIndex: IDL set to -36 followed by getAttribute() 
+PASS select.tabIndex: IDL set to -36 followed by IDL get 
+PASS select.tabIndex: IDL set to -1 should not throw 
+PASS select.tabIndex: IDL set to -1 followed by getAttribute() 
+PASS select.tabIndex: IDL set to -1 followed by IDL get 
+PASS select.tabIndex: IDL set to 0 should not throw 
+PASS select.tabIndex: IDL set to 0 followed by getAttribute() 
+PASS select.tabIndex: IDL set to 0 followed by IDL get 
+PASS select.tabIndex: IDL set to 1 should not throw 
+PASS select.tabIndex: IDL set to 1 followed by getAttribute() 
+PASS select.tabIndex: IDL set to 1 followed by IDL get 
+PASS select.tabIndex: IDL set to 2147483647 should not throw 
+PASS select.tabIndex: IDL set to 2147483647 followed by getAttribute() 
+PASS select.tabIndex: IDL set to 2147483647 followed by IDL get 
+PASS select.tabIndex: IDL set to -2147483648 should not throw 
+PASS select.tabIndex: IDL set to -2147483648 followed by getAttribute() 
+PASS select.tabIndex: IDL set to -2147483648 followed by IDL get 
+PASS select.autofocus: typeof IDL attribute 
+PASS select.autofocus: IDL get with DOM attribute unset 
+PASS select.autofocus: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS select.autofocus: setAttribute() to &quot;&quot; followed by IDL get 
+PASS select.autofocus: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS select.autofocus: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS select.autofocus: setAttribute() to undefined followed by getAttribute() 
+PASS select.autofocus: setAttribute() to undefined followed by IDL get 
+PASS select.autofocus: setAttribute() to null followed by getAttribute() 
+PASS select.autofocus: setAttribute() to null followed by IDL get 
+PASS select.autofocus: setAttribute() to 7 followed by getAttribute() 
+PASS select.autofocus: setAttribute() to 7 followed by IDL get 
+PASS select.autofocus: setAttribute() to 1.5 followed by getAttribute() 
+PASS select.autofocus: setAttribute() to 1.5 followed by IDL get 
+PASS select.autofocus: setAttribute() to true followed by getAttribute() 
+PASS select.autofocus: setAttribute() to true followed by IDL get 
+PASS select.autofocus: setAttribute() to false followed by getAttribute() 
+PASS select.autofocus: setAttribute() to false followed by IDL get 
+PASS select.autofocus: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS select.autofocus: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS select.autofocus: setAttribute() to NaN followed by getAttribute() 
+PASS select.autofocus: setAttribute() to NaN followed by IDL get 
+PASS select.autofocus: setAttribute() to Infinity followed by getAttribute() 
+PASS select.autofocus: setAttribute() to Infinity followed by IDL get 
+PASS select.autofocus: setAttribute() to -Infinity followed by getAttribute() 
+PASS select.autofocus: setAttribute() to -Infinity followed by IDL get 
+PASS select.autofocus: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS select.autofocus: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS select.autofocus: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS select.autofocus: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS select.autofocus: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS select.autofocus: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS select.autofocus: setAttribute() to &quot;autofocus&quot; followed by getAttribute() 
+PASS select.autofocus: setAttribute() to &quot;autofocus&quot; followed by IDL get 
+PASS select.autofocus: IDL set to &quot;&quot; should not throw 
+PASS select.autofocus: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS select.autofocus: IDL set to &quot;&quot; followed by IDL get 
+PASS select.autofocus: IDL set to &quot; foo &quot; should not throw 
+PASS select.autofocus: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS select.autofocus: IDL set to &quot; foo &quot; followed by IDL get 
+PASS select.autofocus: IDL set to undefined should not throw 
+PASS select.autofocus: IDL set to undefined followed by hasAttribute() 
+PASS select.autofocus: IDL set to undefined followed by IDL get 
+PASS select.autofocus: IDL set to null should not throw 
+PASS select.autofocus: IDL set to null followed by hasAttribute() 
+PASS select.autofocus: IDL set to null followed by IDL get 
+PASS select.autofocus: IDL set to 7 should not throw 
+PASS select.autofocus: IDL set to 7 followed by hasAttribute() 
+PASS select.autofocus: IDL set to 7 followed by IDL get 
+PASS select.autofocus: IDL set to 1.5 should not throw 
+PASS select.autofocus: IDL set to 1.5 followed by hasAttribute() 
+PASS select.autofocus: IDL set to 1.5 followed by IDL get 
+PASS select.autofocus: IDL set to true should not throw 
+PASS select.autofocus: IDL set to true followed by hasAttribute() 
+PASS select.autofocus: IDL set to true followed by IDL get 
+PASS select.autofocus: IDL set to false should not throw 
+PASS select.autofocus: IDL set to false followed by hasAttribute() 
+PASS select.autofocus: IDL set to false followed by IDL get 
+PASS select.autofocus: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS select.autofocus: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS select.autofocus: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS select.autofocus: IDL set to NaN should not throw 
+PASS select.autofocus: IDL set to NaN followed by hasAttribute() 
+PASS select.autofocus: IDL set to NaN followed by IDL get 
+PASS select.autofocus: IDL set to Infinity should not throw 
+PASS select.autofocus: IDL set to Infinity followed by hasAttribute() 
+PASS select.autofocus: IDL set to Infinity followed by IDL get 
+PASS select.autofocus: IDL set to -Infinity should not throw 
+PASS select.autofocus: IDL set to -Infinity followed by hasAttribute() 
+PASS select.autofocus: IDL set to -Infinity followed by IDL get 
+PASS select.autofocus: IDL set to &quot;\0&quot; should not throw 
+PASS select.autofocus: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS select.autofocus: IDL set to &quot;\0&quot; followed by IDL get 
+PASS select.autofocus: IDL set to object &quot;test-toString&quot; should not throw 
+PASS select.autofocus: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS select.autofocus: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS select.autofocus: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS select.autofocus: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS select.autofocus: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS select.disabled: typeof IDL attribute 
+PASS select.disabled: IDL get with DOM attribute unset 
+PASS select.disabled: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS select.disabled: setAttribute() to &quot;&quot; followed by IDL get 
+PASS select.disabled: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS select.disabled: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS select.disabled: setAttribute() to undefined followed by getAttribute() 
+PASS select.disabled: setAttribute() to undefined followed by IDL get 
+PASS select.disabled: setAttribute() to null followed by getAttribute() 
+PASS select.disabled: setAttribute() to null followed by IDL get 
+PASS select.disabled: setAttribute() to 7 followed by getAttribute() 
+PASS select.disabled: setAttribute() to 7 followed by IDL get 
+PASS select.disabled: setAttribute() to 1.5 followed by getAttribute() 
+PASS select.disabled: setAttribute() to 1.5 followed by IDL get 
+PASS select.disabled: setAttribute() to true followed by getAttribute() 
+PASS select.disabled: setAttribute() to true followed by IDL get 
+PASS select.disabled: setAttribute() to false followed by getAttribute() 
+PASS select.disabled: setAttribute() to false followed by IDL get 
+PASS select.disabled: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS select.disabled: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS select.disabled: setAttribute() to NaN followed by getAttribute() 
+PASS select.disabled: setAttribute() to NaN followed by IDL get 
+PASS select.disabled: setAttribute() to Infinity followed by getAttribute() 
+PASS select.disabled: setAttribute() to Infinity followed by IDL get 
+PASS select.disabled: setAttribute() to -Infinity followed by getAttribute() 
+PASS select.disabled: setAttribute() to -Infinity followed by IDL get 
+PASS select.disabled: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS select.disabled: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS select.disabled: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS select.disabled: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS select.disabled: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS select.disabled: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS select.disabled: setAttribute() to &quot;disabled&quot; followed by getAttribute() 
+PASS select.disabled: setAttribute() to &quot;disabled&quot; followed by IDL get 
+PASS select.disabled: IDL set to &quot;&quot; should not throw 
+PASS select.disabled: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS select.disabled: IDL set to &quot;&quot; followed by IDL get 
+PASS select.disabled: IDL set to &quot; foo &quot; should not throw 
+PASS select.disabled: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS select.disabled: IDL set to &quot; foo &quot; followed by IDL get 
+PASS select.disabled: IDL set to undefined should not throw 
+PASS select.disabled: IDL set to undefined followed by hasAttribute() 
+PASS select.disabled: IDL set to undefined followed by IDL get 
+PASS select.disabled: IDL set to null should not throw 
+PASS select.disabled: IDL set to null followed by hasAttribute() 
+PASS select.disabled: IDL set to null followed by IDL get 
+PASS select.disabled: IDL set to 7 should not throw 
+PASS select.disabled: IDL set to 7 followed by hasAttribute() 
+PASS select.disabled: IDL set to 7 followed by IDL get 
+PASS select.disabled: IDL set to 1.5 should not throw 
+PASS select.disabled: IDL set to 1.5 followed by hasAttribute() 
+PASS select.disabled: IDL set to 1.5 followed by IDL get 
+PASS select.disabled: IDL set to true should not throw 
+PASS select.disabled: IDL set to true followed by hasAttribute() 
+PASS select.disabled: IDL set to true followed by IDL get 
+PASS select.disabled: IDL set to false should not throw 
+PASS select.disabled: IDL set to false followed by hasAttribute() 
+PASS select.disabled: IDL set to false followed by IDL get 
+PASS select.disabled: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS select.disabled: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS select.disabled: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS select.disabled: IDL set to NaN should not throw 
+PASS select.disabled: IDL set to NaN followed by hasAttribute() 
+PASS select.disabled: IDL set to NaN followed by IDL get 
+PASS select.disabled: IDL set to Infinity should not throw 
+PASS select.disabled: IDL set to Infinity followed by hasAttribute() 
+PASS select.disabled: IDL set to Infinity followed by IDL get 
+PASS select.disabled: IDL set to -Infinity should not throw 
+PASS select.disabled: IDL set to -Infinity followed by hasAttribute() 
+PASS select.disabled: IDL set to -Infinity followed by IDL get 
+PASS select.disabled: IDL set to &quot;\0&quot; should not throw 
+PASS select.disabled: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS select.disabled: IDL set to &quot;\0&quot; followed by IDL get 
+PASS select.disabled: IDL set to object &quot;test-toString&quot; should not throw 
+PASS select.disabled: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS select.disabled: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS select.disabled: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS select.disabled: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS select.disabled: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS select.multiple: typeof IDL attribute 
+PASS select.multiple: IDL get with DOM attribute unset 
+PASS select.multiple: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS select.multiple: setAttribute() to &quot;&quot; followed by IDL get 
+PASS select.multiple: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS select.multiple: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS select.multiple: setAttribute() to undefined followed by getAttribute() 
+PASS select.multiple: setAttribute() to undefined followed by IDL get 
+PASS select.multiple: setAttribute() to null followed by getAttribute() 
+PASS select.multiple: setAttribute() to null followed by IDL get 
+PASS select.multiple: setAttribute() to 7 followed by getAttribute() 
+PASS select.multiple: setAttribute() to 7 followed by IDL get 
+PASS select.multiple: setAttribute() to 1.5 followed by getAttribute() 
+PASS select.multiple: setAttribute() to 1.5 followed by IDL get 
+PASS select.multiple: setAttribute() to true followed by getAttribute() 
+PASS select.multiple: setAttribute() to true followed by IDL get 
+PASS select.multiple: setAttribute() to false followed by getAttribute() 
+PASS select.multiple: setAttribute() to false followed by IDL get 
+PASS select.multiple: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS select.multiple: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS select.multiple: setAttribute() to NaN followed by getAttribute() 
+PASS select.multiple: setAttribute() to NaN followed by IDL get 
+PASS select.multiple: setAttribute() to Infinity followed by getAttribute() 
+PASS select.multiple: setAttribute() to Infinity followed by IDL get 
+PASS select.multiple: setAttribute() to -Infinity followed by getAttribute() 
+PASS select.multiple: setAttribute() to -Infinity followed by IDL get 
+PASS select.multiple: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS select.multiple: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS select.multiple: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS select.multiple: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS select.multiple: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS select.multiple: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS select.multiple: setAttribute() to &quot;multiple&quot; followed by getAttribute() 
+PASS select.multiple: setAttribute() to &quot;multiple&quot; followed by IDL get 
+PASS select.multiple: IDL set to &quot;&quot; should not throw 
+PASS select.multiple: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS select.multiple: IDL set to &quot;&quot; followed by IDL get 
+PASS select.multiple: IDL set to &quot; foo &quot; should not throw 
+PASS select.multiple: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS select.multiple: IDL set to &quot; foo &quot; followed by IDL get 
+PASS select.multiple: IDL set to undefined should not throw 
+PASS select.multiple: IDL set to undefined followed by hasAttribute() 
+PASS select.multiple: IDL set to undefined followed by IDL get 
+PASS select.multiple: IDL set to null should not throw 
+PASS select.multiple: IDL set to null followed by hasAttribute() 
+PASS select.multiple: IDL set to null followed by IDL get 
+PASS select.multiple: IDL set to 7 should not throw 
+PASS select.multiple: IDL set to 7 followed by hasAttribute() 
+PASS select.multiple: IDL set to 7 followed by IDL get 
+PASS select.multiple: IDL set to 1.5 should not throw 
+PASS select.multiple: IDL set to 1.5 followed by hasAttribute() 
+PASS select.multiple: IDL set to 1.5 followed by IDL get 
+PASS select.multiple: IDL set to true should not throw 
+PASS select.multiple: IDL set to true followed by hasAttribute() 
+PASS select.multiple: IDL set to true followed by IDL get 
+PASS select.multiple: IDL set to false should not throw 
+PASS select.multiple: IDL set to false followed by hasAttribute() 
+PASS select.multiple: IDL set to false followed by IDL get 
+PASS select.multiple: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS select.multiple: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS select.multiple: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS select.multiple: IDL set to NaN should not throw 
+PASS select.multiple: IDL set to NaN followed by hasAttribute() 
+PASS select.multiple: IDL set to NaN followed by IDL get 
+PASS select.multiple: IDL set to Infinity should not throw 
+PASS select.multiple: IDL set to Infinity followed by hasAttribute() 
+PASS select.multiple: IDL set to Infinity followed by IDL get 
+PASS select.multiple: IDL set to -Infinity should not throw 
+PASS select.multiple: IDL set to -Infinity followed by hasAttribute() 
+PASS select.multiple: IDL set to -Infinity followed by IDL get 
+PASS select.multiple: IDL set to &quot;\0&quot; should not throw 
+PASS select.multiple: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS select.multiple: IDL set to &quot;\0&quot; followed by IDL get 
+PASS select.multiple: IDL set to object &quot;test-toString&quot; should not throw 
+PASS select.multiple: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS select.multiple: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS select.multiple: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS select.multiple: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS select.multiple: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS select.name: typeof IDL attribute 
+PASS select.name: IDL get with DOM attribute unset 
+PASS select.name: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS select.name: setAttribute() to &quot;&quot; followed by IDL get 
+PASS select.name: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS select.name: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS select.name: setAttribute() to undefined followed by getAttribute() 
+PASS select.name: setAttribute() to undefined followed by IDL get 
+PASS select.name: setAttribute() to 7 followed by getAttribute() 
+PASS select.name: setAttribute() to 7 followed by IDL get 
+PASS select.name: setAttribute() to 1.5 followed by getAttribute() 
+PASS select.name: setAttribute() to 1.5 followed by IDL get 
+PASS select.name: setAttribute() to true followed by getAttribute() 
+PASS select.name: setAttribute() to true followed by IDL get 
+PASS select.name: setAttribute() to false followed by getAttribute() 
+PASS select.name: setAttribute() to false followed by IDL get 
+PASS select.name: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS select.name: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS select.name: setAttribute() to NaN followed by getAttribute() 
+PASS select.name: setAttribute() to NaN followed by IDL get 
+PASS select.name: setAttribute() to Infinity followed by getAttribute() 
+PASS select.name: setAttribute() to Infinity followed by IDL get 
+PASS select.name: setAttribute() to -Infinity followed by getAttribute() 
+PASS select.name: setAttribute() to -Infinity followed by IDL get 
+PASS select.name: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS select.name: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS select.name: setAttribute() to null followed by getAttribute() 
+PASS select.name: setAttribute() to null followed by IDL get 
+PASS select.name: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS select.name: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS select.name: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS select.name: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS select.name: IDL set to &quot;&quot; should not throw 
+PASS select.name: IDL set to &quot;&quot; followed by getAttribute() 
+PASS select.name: IDL set to &quot;&quot; followed by IDL get 
+PASS select.name: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS select.name: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS select.name: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS select.name: IDL set to undefined should not throw 
+PASS select.name: IDL set to undefined followed by getAttribute() 
+PASS select.name: IDL set to undefined followed by IDL get 
+PASS select.name: IDL set to 7 should not throw 
+PASS select.name: IDL set to 7 followed by getAttribute() 
+PASS select.name: IDL set to 7 followed by IDL get 
+PASS select.name: IDL set to 1.5 should not throw 
+PASS select.name: IDL set to 1.5 followed by getAttribute() 
+PASS select.name: IDL set to 1.5 followed by IDL get 
+PASS select.name: IDL set to true should not throw 
+PASS select.name: IDL set to true followed by getAttribute() 
+PASS select.name: IDL set to true followed by IDL get 
+PASS select.name: IDL set to false should not throw 
+PASS select.name: IDL set to false followed by getAttribute() 
+PASS select.name: IDL set to false followed by IDL get 
+PASS select.name: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS select.name: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS select.name: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS select.name: IDL set to NaN should not throw 
+PASS select.name: IDL set to NaN followed by getAttribute() 
+PASS select.name: IDL set to NaN followed by IDL get 
+PASS select.name: IDL set to Infinity should not throw 
+PASS select.name: IDL set to Infinity followed by getAttribute() 
+PASS select.name: IDL set to Infinity followed by IDL get 
+PASS select.name: IDL set to -Infinity should not throw 
+PASS select.name: IDL set to -Infinity followed by getAttribute() 
+PASS select.name: IDL set to -Infinity followed by IDL get 
+PASS select.name: IDL set to &quot;\0&quot; should not throw 
+PASS select.name: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS select.name: IDL set to &quot;\0&quot; followed by IDL get 
+PASS select.name: IDL set to null should not throw 
+PASS select.name: IDL set to null followed by getAttribute() 
+PASS select.name: IDL set to null followed by IDL get 
+PASS select.name: IDL set to object &quot;test-toString&quot; should not throw 
+PASS select.name: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS select.name: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS select.name: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS select.name: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS select.name: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS select.required: typeof IDL attribute 
+PASS select.required: IDL get with DOM attribute unset 
+PASS select.required: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS select.required: setAttribute() to &quot;&quot; followed by IDL get 
+PASS select.required: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS select.required: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS select.required: setAttribute() to undefined followed by getAttribute() 
+PASS select.required: setAttribute() to undefined followed by IDL get 
+PASS select.required: setAttribute() to null followed by getAttribute() 
+PASS select.required: setAttribute() to null followed by IDL get 
+PASS select.required: setAttribute() to 7 followed by getAttribute() 
+PASS select.required: setAttribute() to 7 followed by IDL get 
+PASS select.required: setAttribute() to 1.5 followed by getAttribute() 
+PASS select.required: setAttribute() to 1.5 followed by IDL get 
+PASS select.required: setAttribute() to true followed by getAttribute() 
+PASS select.required: setAttribute() to true followed by IDL get 
+PASS select.required: setAttribute() to false followed by getAttribute() 
+PASS select.required: setAttribute() to false followed by IDL get 
+PASS select.required: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS select.required: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS select.required: setAttribute() to NaN followed by getAttribute() 
+PASS select.required: setAttribute() to NaN followed by IDL get 
+PASS select.required: setAttribute() to Infinity followed by getAttribute() 
+PASS select.required: setAttribute() to Infinity followed by IDL get 
+PASS select.required: setAttribute() to -Infinity followed by getAttribute() 
+PASS select.required: setAttribute() to -Infinity followed by IDL get 
+PASS select.required: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS select.required: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS select.required: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS select.required: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS select.required: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS select.required: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS select.required: setAttribute() to &quot;required&quot; followed by getAttribute() 
+PASS select.required: setAttribute() to &quot;required&quot; followed by IDL get 
+PASS select.required: IDL set to &quot;&quot; should not throw 
+PASS select.required: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS select.required: IDL set to &quot;&quot; followed by IDL get 
+PASS select.required: IDL set to &quot; foo &quot; should not throw 
+PASS select.required: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS select.required: IDL set to &quot; foo &quot; followed by IDL get 
+PASS select.required: IDL set to undefined should not throw 
+PASS select.required: IDL set to undefined followed by hasAttribute() 
+PASS select.required: IDL set to undefined followed by IDL get 
+PASS select.required: IDL set to null should not throw 
+PASS select.required: IDL set to null followed by hasAttribute() 
+PASS select.required: IDL set to null followed by IDL get 
+PASS select.required: IDL set to 7 should not throw 
+PASS select.required: IDL set to 7 followed by hasAttribute() 
+PASS select.required: IDL set to 7 followed by IDL get 
+PASS select.required: IDL set to 1.5 should not throw 
+PASS select.required: IDL set to 1.5 followed by hasAttribute() 
+PASS select.required: IDL set to 1.5 followed by IDL get 
+PASS select.required: IDL set to true should not throw 
+PASS select.required: IDL set to true followed by hasAttribute() 
+PASS select.required: IDL set to true followed by IDL get 
+PASS select.required: IDL set to false should not throw 
+PASS select.required: IDL set to false followed by hasAttribute() 
+PASS select.required: IDL set to false followed by IDL get 
+PASS select.required: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS select.required: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS select.required: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS select.required: IDL set to NaN should not throw 
+PASS select.required: IDL set to NaN followed by hasAttribute() 
+PASS select.required: IDL set to NaN followed by IDL get 
+PASS select.required: IDL set to Infinity should not throw 
+PASS select.required: IDL set to Infinity followed by hasAttribute() 
+PASS select.required: IDL set to Infinity followed by IDL get 
+PASS select.required: IDL set to -Infinity should not throw 
+PASS select.required: IDL set to -Infinity followed by hasAttribute() 
+PASS select.required: IDL set to -Infinity followed by IDL get 
+PASS select.required: IDL set to &quot;\0&quot; should not throw 
+PASS select.required: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS select.required: IDL set to &quot;\0&quot; followed by IDL get 
+PASS select.required: IDL set to object &quot;test-toString&quot; should not throw 
+PASS select.required: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS select.required: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS select.required: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS select.required: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS select.required: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS select.size: typeof IDL attribute 
+PASS select.size: IDL get with DOM attribute unset 
+PASS select.size: setAttribute() to -2147483649 followed by getAttribute() 
+PASS select.size: setAttribute() to -2147483649 followed by IDL get 
+PASS select.size: setAttribute() to -2147483648 followed by getAttribute() 
+PASS select.size: setAttribute() to -2147483648 followed by IDL get 
+PASS select.size: setAttribute() to -36 followed by getAttribute() 
+PASS select.size: setAttribute() to -36 followed by IDL get 
+PASS select.size: setAttribute() to -1 followed by getAttribute() 
+PASS select.size: setAttribute() to -1 followed by IDL get 
+PASS select.size: setAttribute() to 0 followed by getAttribute() 
+PASS select.size: setAttribute() to 0 followed by IDL get 
+PASS select.size: setAttribute() to 1 followed by getAttribute() 
+PASS select.size: setAttribute() to 1 followed by IDL get 
+PASS select.size: setAttribute() to 257 followed by getAttribute() 
+PASS select.size: setAttribute() to 257 followed by IDL get 
+PASS select.size: setAttribute() to 2147483647 followed by getAttribute() 
+PASS select.size: setAttribute() to 2147483647 followed by IDL get 
+PASS select.size: setAttribute() to 2147483648 followed by getAttribute() 
+PASS select.size: setAttribute() to 2147483648 followed by IDL get 
+PASS select.size: setAttribute() to 4294967295 followed by getAttribute() 
+PASS select.size: setAttribute() to 4294967295 followed by IDL get 
+PASS select.size: setAttribute() to 4294967296 followed by getAttribute() 
+PASS select.size: setAttribute() to 4294967296 followed by IDL get 
+PASS select.size: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot;&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot;-1&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot;-1&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot;-0&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot;-0&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot;0&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot;0&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot;1&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot;1&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot;\t7&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot;\t7&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot;\v7&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot;\v7&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot;\f7&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot;\f7&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot;7&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot;7&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot;\n7&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot;\n7&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot;\r7&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot;\r7&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot;
7&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot;
7&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot;
7&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot;
7&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot;᠎7&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot;᠎7&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS select.size: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS select.size: setAttribute() to undefined followed by getAttribute() 
+PASS select.size: setAttribute() to undefined followed by IDL get 
+PASS select.size: setAttribute() to 1.5 followed by getAttribute() 
+PASS select.size: setAttribute() to 1.5 followed by IDL get 
+PASS select.size: setAttribute() to true followed by getAttribute() 
+PASS select.size: setAttribute() to true followed by IDL get 
+PASS select.size: setAttribute() to false followed by getAttribute() 
+PASS select.size: setAttribute() to false followed by IDL get 
+PASS select.size: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS select.size: setAttribute() to NaN followed by getAttribute() 
+PASS select.size: setAttribute() to NaN followed by IDL get 
+PASS select.size: setAttribute() to Infinity followed by getAttribute() 
+PASS select.size: setAttribute() to Infinity followed by IDL get 
+PASS select.size: setAttribute() to -Infinity followed by getAttribute() 
+PASS select.size: setAttribute() to -Infinity followed by IDL get 
+PASS select.size: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS select.size: setAttribute() to object &quot;2&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to object &quot;2&quot; followed by IDL get 
+PASS select.size: setAttribute() to object &quot;3&quot; followed by getAttribute() 
+PASS select.size: setAttribute() to object &quot;3&quot; followed by IDL get 
+PASS select.size: IDL set to 0 should not throw 
+PASS select.size: IDL set to 0 followed by getAttribute() 
+PASS select.size: IDL set to 0 followed by IDL get 
+PASS select.size: IDL set to 1 should not throw 
+PASS select.size: IDL set to 1 followed by getAttribute() 
+PASS select.size: IDL set to 1 followed by IDL get 
+PASS select.size: IDL set to 257 should not throw 
+PASS select.size: IDL set to 257 followed by getAttribute() 
+PASS select.size: IDL set to 257 followed by IDL get 
+PASS select.size: IDL set to 2147483647 should not throw 
+PASS select.size: IDL set to 2147483647 followed by getAttribute() 
+PASS select.size: IDL set to 2147483647 followed by IDL get 
+PASS select.size: IDL set to &quot;-0&quot; should not throw 
+PASS select.size: IDL set to &quot;-0&quot; followed by getAttribute() 
+PASS select.size: IDL set to &quot;-0&quot; followed by IDL get 
+PASS select.size: IDL set to 2147483648 should not throw 
+PASS select.size: IDL set to 2147483648 followed by getAttribute() 
+PASS select.size: IDL set to 2147483648 followed by IDL get 
+PASS select.size: IDL set to 4294967295 should not throw 
+PASS select.size: IDL set to 4294967295 followed by getAttribute() 
+PASS select.size: IDL set to 4294967295 followed by IDL get 
+PASS datalist.title: typeof IDL attribute 
+PASS datalist.title: IDL get with DOM attribute unset 
+PASS datalist.title: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS datalist.title: setAttribute() to &quot;&quot; followed by IDL get 
+PASS datalist.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS datalist.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS datalist.title: setAttribute() to undefined followed by getAttribute() 
+PASS datalist.title: setAttribute() to undefined followed by IDL get 
+PASS datalist.title: setAttribute() to 7 followed by getAttribute() 
+PASS datalist.title: setAttribute() to 7 followed by IDL get 
+PASS datalist.title: setAttribute() to 1.5 followed by getAttribute() 
+PASS datalist.title: setAttribute() to 1.5 followed by IDL get 
+PASS datalist.title: setAttribute() to true followed by getAttribute() 
+PASS datalist.title: setAttribute() to true followed by IDL get 
+PASS datalist.title: setAttribute() to false followed by getAttribute() 
+PASS datalist.title: setAttribute() to false followed by IDL get 
+PASS datalist.title: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS datalist.title: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS datalist.title: setAttribute() to NaN followed by getAttribute() 
+PASS datalist.title: setAttribute() to NaN followed by IDL get 
+PASS datalist.title: setAttribute() to Infinity followed by getAttribute() 
+PASS datalist.title: setAttribute() to Infinity followed by IDL get 
+PASS datalist.title: setAttribute() to -Infinity followed by getAttribute() 
+PASS datalist.title: setAttribute() to -Infinity followed by IDL get 
+PASS datalist.title: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS datalist.title: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS datalist.title: setAttribute() to null followed by getAttribute() 
+PASS datalist.title: setAttribute() to null followed by IDL get 
+PASS datalist.title: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS datalist.title: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS datalist.title: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS datalist.title: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS datalist.title: IDL set to &quot;&quot; should not throw 
+PASS datalist.title: IDL set to &quot;&quot; followed by getAttribute() 
+PASS datalist.title: IDL set to &quot;&quot; followed by IDL get 
+PASS datalist.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS datalist.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS datalist.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS datalist.title: IDL set to undefined should not throw 
+PASS datalist.title: IDL set to undefined followed by getAttribute() 
+PASS datalist.title: IDL set to undefined followed by IDL get 
+PASS datalist.title: IDL set to 7 should not throw 
+PASS datalist.title: IDL set to 7 followed by getAttribute() 
+PASS datalist.title: IDL set to 7 followed by IDL get 
+PASS datalist.title: IDL set to 1.5 should not throw 
+PASS datalist.title: IDL set to 1.5 followed by getAttribute() 
+PASS datalist.title: IDL set to 1.5 followed by IDL get 
+PASS datalist.title: IDL set to true should not throw 
+PASS datalist.title: IDL set to true followed by getAttribute() 
+PASS datalist.title: IDL set to true followed by IDL get 
+PASS datalist.title: IDL set to false should not throw 
+PASS datalist.title: IDL set to false followed by getAttribute() 
+PASS datalist.title: IDL set to false followed by IDL get 
+PASS datalist.title: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS datalist.title: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS datalist.title: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS datalist.title: IDL set to NaN should not throw 
+PASS datalist.title: IDL set to NaN followed by getAttribute() 
+PASS datalist.title: IDL set to NaN followed by IDL get 
+PASS datalist.title: IDL set to Infinity should not throw 
+PASS datalist.title: IDL set to Infinity followed by getAttribute() 
+PASS datalist.title: IDL set to Infinity followed by IDL get 
+PASS datalist.title: IDL set to -Infinity should not throw 
+PASS datalist.title: IDL set to -Infinity followed by getAttribute() 
+PASS datalist.title: IDL set to -Infinity followed by IDL get 
+PASS datalist.title: IDL set to &quot;\0&quot; should not throw 
+PASS datalist.title: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS datalist.title: IDL set to &quot;\0&quot; followed by IDL get 
+PASS datalist.title: IDL set to null should not throw 
+PASS datalist.title: IDL set to null followed by getAttribute() 
+PASS datalist.title: IDL set to null followed by IDL get 
+PASS datalist.title: IDL set to object &quot;test-toString&quot; should not throw 
+PASS datalist.title: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS datalist.title: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS datalist.title: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS datalist.title: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS datalist.title: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS datalist.lang: typeof IDL attribute 
+PASS datalist.lang: IDL get with DOM attribute unset 
+PASS datalist.lang: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS datalist.lang: setAttribute() to &quot;&quot; followed by IDL get 
+PASS datalist.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS datalist.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS datalist.lang: setAttribute() to undefined followed by getAttribute() 
+PASS datalist.lang: setAttribute() to undefined followed by IDL get 
+PASS datalist.lang: setAttribute() to 7 followed by getAttribute() 
+PASS datalist.lang: setAttribute() to 7 followed by IDL get 
+PASS datalist.lang: setAttribute() to 1.5 followed by getAttribute() 
+PASS datalist.lang: setAttribute() to 1.5 followed by IDL get 
+PASS datalist.lang: setAttribute() to true followed by getAttribute() 
+PASS datalist.lang: setAttribute() to true followed by IDL get 
+PASS datalist.lang: setAttribute() to false followed by getAttribute() 
+PASS datalist.lang: setAttribute() to false followed by IDL get 
+PASS datalist.lang: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS datalist.lang: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS datalist.lang: setAttribute() to NaN followed by getAttribute() 
+PASS datalist.lang: setAttribute() to NaN followed by IDL get 
+PASS datalist.lang: setAttribute() to Infinity followed by getAttribute() 
+PASS datalist.lang: setAttribute() to Infinity followed by IDL get 
+PASS datalist.lang: setAttribute() to -Infinity followed by getAttribute() 
+PASS datalist.lang: setAttribute() to -Infinity followed by IDL get 
+PASS datalist.lang: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS datalist.lang: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS datalist.lang: setAttribute() to null followed by getAttribute() 
+PASS datalist.lang: setAttribute() to null followed by IDL get 
+PASS datalist.lang: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS datalist.lang: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS datalist.lang: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS datalist.lang: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS datalist.lang: IDL set to &quot;&quot; should not throw 
+PASS datalist.lang: IDL set to &quot;&quot; followed by getAttribute() 
+PASS datalist.lang: IDL set to &quot;&quot; followed by IDL get 
+PASS datalist.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS datalist.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS datalist.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS datalist.lang: IDL set to undefined should not throw 
+PASS datalist.lang: IDL set to undefined followed by getAttribute() 
+PASS datalist.lang: IDL set to undefined followed by IDL get 
+PASS datalist.lang: IDL set to 7 should not throw 
+PASS datalist.lang: IDL set to 7 followed by getAttribute() 
+PASS datalist.lang: IDL set to 7 followed by IDL get 
+PASS datalist.lang: IDL set to 1.5 should not throw 
+PASS datalist.lang: IDL set to 1.5 followed by getAttribute() 
+PASS datalist.lang: IDL set to 1.5 followed by IDL get 
+PASS datalist.lang: IDL set to true should not throw 
+PASS datalist.lang: IDL set to true followed by getAttribute() 
+PASS datalist.lang: IDL set to true followed by IDL get 
+PASS datalist.lang: IDL set to false should not throw 
+PASS datalist.lang: IDL set to false followed by getAttribute() 
+PASS datalist.lang: IDL set to false followed by IDL get 
+PASS datalist.lang: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS datalist.lang: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS datalist.lang: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS datalist.lang: IDL set to NaN should not throw 
+PASS datalist.lang: IDL set to NaN followed by getAttribute() 
+PASS datalist.lang: IDL set to NaN followed by IDL get 
+PASS datalist.lang: IDL set to Infinity should not throw 
+PASS datalist.lang: IDL set to Infinity followed by getAttribute() 
+PASS datalist.lang: IDL set to Infinity followed by IDL get 
+PASS datalist.lang: IDL set to -Infinity should not throw 
+PASS datalist.lang: IDL set to -Infinity followed by getAttribute() 
+PASS datalist.lang: IDL set to -Infinity followed by IDL get 
+PASS datalist.lang: IDL set to &quot;\0&quot; should not throw 
+PASS datalist.lang: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS datalist.lang: IDL set to &quot;\0&quot; followed by IDL get 
+PASS datalist.lang: IDL set to null should not throw 
+PASS datalist.lang: IDL set to null followed by getAttribute() 
+PASS datalist.lang: IDL set to null followed by IDL get 
+PASS datalist.lang: IDL set to object &quot;test-toString&quot; should not throw 
+PASS datalist.lang: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS datalist.lang: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS datalist.lang: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS datalist.lang: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS datalist.lang: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS datalist.dir: typeof IDL attribute 
+PASS datalist.dir: IDL get with DOM attribute unset 
+PASS datalist.dir: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS datalist.dir: setAttribute() to &quot;&quot; followed by IDL get 
+PASS datalist.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS datalist.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS datalist.dir: setAttribute() to undefined followed by getAttribute() 
+PASS datalist.dir: setAttribute() to undefined followed by IDL get 
+PASS datalist.dir: setAttribute() to 7 followed by getAttribute() 
+PASS datalist.dir: setAttribute() to 7 followed by IDL get 
+PASS datalist.dir: setAttribute() to 1.5 followed by getAttribute() 
+PASS datalist.dir: setAttribute() to 1.5 followed by IDL get 
+PASS datalist.dir: setAttribute() to true followed by getAttribute() 
+PASS datalist.dir: setAttribute() to true followed by IDL get 
+PASS datalist.dir: setAttribute() to false followed by getAttribute() 
+PASS datalist.dir: setAttribute() to false followed by IDL get 
+PASS datalist.dir: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS datalist.dir: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS datalist.dir: setAttribute() to NaN followed by getAttribute() 
+PASS datalist.dir: setAttribute() to NaN followed by IDL get 
+PASS datalist.dir: setAttribute() to Infinity followed by getAttribute() 
+PASS datalist.dir: setAttribute() to Infinity followed by IDL get 
+PASS datalist.dir: setAttribute() to -Infinity followed by getAttribute() 
+PASS datalist.dir: setAttribute() to -Infinity followed by IDL get 
+PASS datalist.dir: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS datalist.dir: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS datalist.dir: setAttribute() to null followed by getAttribute() 
+PASS datalist.dir: setAttribute() to null followed by IDL get 
+PASS datalist.dir: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS datalist.dir: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS datalist.dir: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS datalist.dir: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS datalist.dir: setAttribute() to &quot;ltr&quot; followed by getAttribute() 
+PASS datalist.dir: setAttribute() to &quot;ltr&quot; followed by IDL get 
+PASS datalist.dir: setAttribute() to &quot;xltr&quot; followed by getAttribute() 
+PASS datalist.dir: setAttribute() to &quot;xltr&quot; followed by IDL get 
+PASS datalist.dir: setAttribute() to &quot;ltr\0&quot; followed by getAttribute() 
+PASS datalist.dir: setAttribute() to &quot;ltr\0&quot; followed by IDL get 
+PASS datalist.dir: setAttribute() to &quot;tr&quot; followed by getAttribute() 
+PASS datalist.dir: setAttribute() to &quot;tr&quot; followed by IDL get 
+PASS datalist.dir: setAttribute() to &quot;LTR&quot; followed by getAttribute() 
+PASS datalist.dir: setAttribute() to &quot;LTR&quot; followed by IDL get 
+PASS datalist.dir: setAttribute() to &quot;rtl&quot; followed by getAttribute() 
+PASS datalist.dir: setAttribute() to &quot;rtl&quot; followed by IDL get 
+PASS datalist.dir: setAttribute() to &quot;xrtl&quot; followed by getAttribute() 
+PASS datalist.dir: setAttribute() to &quot;xrtl&quot; followed by IDL get 
+PASS datalist.dir: setAttribute() to &quot;rtl\0&quot; followed by getAttribute() 
+PASS datalist.dir: setAttribute() to &quot;rtl\0&quot; followed by IDL get 
+PASS datalist.dir: setAttribute() to &quot;tl&quot; followed by getAttribute() 
+PASS datalist.dir: setAttribute() to &quot;tl&quot; followed by IDL get 
+PASS datalist.dir: setAttribute() to &quot;RTL&quot; followed by getAttribute() 
+PASS datalist.dir: setAttribute() to &quot;RTL&quot; followed by IDL get 
+PASS datalist.dir: setAttribute() to &quot;auto&quot; followed by getAttribute() 
+PASS datalist.dir: setAttribute() to &quot;auto&quot; followed by IDL get 
+PASS datalist.dir: setAttribute() to &quot;xauto&quot; followed by getAttribute() 
+PASS datalist.dir: setAttribute() to &quot;xauto&quot; followed by IDL get 
+PASS datalist.dir: setAttribute() to &quot;auto\0&quot; followed by getAttribute() 
+PASS datalist.dir: setAttribute() to &quot;auto\0&quot; followed by IDL get 
+PASS datalist.dir: setAttribute() to &quot;uto&quot; followed by getAttribute() 
+PASS datalist.dir: setAttribute() to &quot;uto&quot; followed by IDL get 
+PASS datalist.dir: setAttribute() to &quot;AUTO&quot; followed by getAttribute() 
+PASS datalist.dir: setAttribute() to &quot;AUTO&quot; followed by IDL get 
+PASS datalist.dir: IDL set to &quot;&quot; should not throw 
+PASS datalist.dir: IDL set to &quot;&quot; followed by getAttribute() 
+PASS datalist.dir: IDL set to &quot;&quot; followed by IDL get 
+PASS datalist.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS datalist.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS datalist.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS datalist.dir: IDL set to undefined should not throw 
+PASS datalist.dir: IDL set to undefined followed by getAttribute() 
+PASS datalist.dir: IDL set to undefined followed by IDL get 
+PASS datalist.dir: IDL set to 7 should not throw 
+PASS datalist.dir: IDL set to 7 followed by getAttribute() 
+PASS datalist.dir: IDL set to 7 followed by IDL get 
+PASS datalist.dir: IDL set to 1.5 should not throw 
+PASS datalist.dir: IDL set to 1.5 followed by getAttribute() 
+PASS datalist.dir: IDL set to 1.5 followed by IDL get 
+PASS datalist.dir: IDL set to true should not throw 
+PASS datalist.dir: IDL set to true followed by getAttribute() 
+PASS datalist.dir: IDL set to true followed by IDL get 
+PASS datalist.dir: IDL set to false should not throw 
+PASS datalist.dir: IDL set to false followed by getAttribute() 
+PASS datalist.dir: IDL set to false followed by IDL get 
+PASS datalist.dir: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS datalist.dir: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS datalist.dir: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS datalist.dir: IDL set to NaN should not throw 
+PASS datalist.dir: IDL set to NaN followed by getAttribute() 
+PASS datalist.dir: IDL set to NaN followed by IDL get 
+PASS datalist.dir: IDL set to Infinity should not throw 
+PASS datalist.dir: IDL set to Infinity followed by getAttribute() 
+PASS datalist.dir: IDL set to Infinity followed by IDL get 
+PASS datalist.dir: IDL set to -Infinity should not throw 
+PASS datalist.dir: IDL set to -Infinity followed by getAttribute() 
+PASS datalist.dir: IDL set to -Infinity followed by IDL get 
+PASS datalist.dir: IDL set to &quot;\0&quot; should not throw 
+PASS datalist.dir: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS datalist.dir: IDL set to &quot;\0&quot; followed by IDL get 
+PASS datalist.dir: IDL set to null should not throw 
+PASS datalist.dir: IDL set to null followed by IDL get 
+PASS datalist.dir: IDL set to object &quot;test-toString&quot; should not throw 
+PASS datalist.dir: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS datalist.dir: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS datalist.dir: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS datalist.dir: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS datalist.dir: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS datalist.dir: IDL set to &quot;ltr&quot; should not throw 
+PASS datalist.dir: IDL set to &quot;ltr&quot; followed by getAttribute() 
+PASS datalist.dir: IDL set to &quot;ltr&quot; followed by IDL get 
+PASS datalist.dir: IDL set to &quot;xltr&quot; should not throw 
+PASS datalist.dir: IDL set to &quot;xltr&quot; followed by getAttribute() 
+PASS datalist.dir: IDL set to &quot;xltr&quot; followed by IDL get 
+PASS datalist.dir: IDL set to &quot;ltr\0&quot; should not throw 
+PASS datalist.dir: IDL set to &quot;ltr\0&quot; followed by getAttribute() 
+PASS datalist.dir: IDL set to &quot;ltr\0&quot; followed by IDL get 
+PASS datalist.dir: IDL set to &quot;tr&quot; should not throw 
+PASS datalist.dir: IDL set to &quot;tr&quot; followed by getAttribute() 
+PASS datalist.dir: IDL set to &quot;tr&quot; followed by IDL get 
+PASS datalist.dir: IDL set to &quot;LTR&quot; should not throw 
+PASS datalist.dir: IDL set to &quot;LTR&quot; followed by getAttribute() 
+PASS datalist.dir: IDL set to &quot;LTR&quot; followed by IDL get 
+PASS datalist.dir: IDL set to &quot;rtl&quot; should not throw 
+PASS datalist.dir: IDL set to &quot;rtl&quot; followed by getAttribute() 
+PASS datalist.dir: IDL set to &quot;rtl&quot; followed by IDL get 
+PASS datalist.dir: IDL set to &quot;xrtl&quot; should not throw 
+PASS datalist.dir: IDL set to &quot;xrtl&quot; followed by getAttribute() 
+PASS datalist.dir: IDL set to &quot;xrtl&quot; followed by IDL get 
+PASS datalist.dir: IDL set to &quot;rtl\0&quot; should not throw 
+PASS datalist.dir: IDL set to &quot;rtl\0&quot; followed by getAttribute() 
+PASS datalist.dir: IDL set to &quot;rtl\0&quot; followed by IDL get 
+PASS datalist.dir: IDL set to &quot;tl&quot; should not throw 
+PASS datalist.dir: IDL set to &quot;tl&quot; followed by getAttribute() 
+PASS datalist.dir: IDL set to &quot;tl&quot; followed by IDL get 
+PASS datalist.dir: IDL set to &quot;RTL&quot; should not throw 
+PASS datalist.dir: IDL set to &quot;RTL&quot; followed by getAttribute() 
+PASS datalist.dir: IDL set to &quot;RTL&quot; followed by IDL get 
+PASS datalist.dir: IDL set to &quot;auto&quot; should not throw 
+PASS datalist.dir: IDL set to &quot;auto&quot; followed by getAttribute() 
+PASS datalist.dir: IDL set to &quot;auto&quot; followed by IDL get 
+PASS datalist.dir: IDL set to &quot;xauto&quot; should not throw 
+PASS datalist.dir: IDL set to &quot;xauto&quot; followed by getAttribute() 
+PASS datalist.dir: IDL set to &quot;xauto&quot; followed by IDL get 
+PASS datalist.dir: IDL set to &quot;auto\0&quot; should not throw 
+PASS datalist.dir: IDL set to &quot;auto\0&quot; followed by getAttribute() 
+PASS datalist.dir: IDL set to &quot;auto\0&quot; followed by IDL get 
+PASS datalist.dir: IDL set to &quot;uto&quot; should not throw 
+PASS datalist.dir: IDL set to &quot;uto&quot; followed by getAttribute() 
+PASS datalist.dir: IDL set to &quot;uto&quot; followed by IDL get 
+PASS datalist.dir: IDL set to &quot;AUTO&quot; should not throw 
+PASS datalist.dir: IDL set to &quot;AUTO&quot; followed by getAttribute() 
+PASS datalist.dir: IDL set to &quot;AUTO&quot; followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): typeof IDL attribute 
+PASS datalist.className (&lt;datalist class&gt;): IDL get with DOM attribute unset 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to &quot;&quot; followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to undefined followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to undefined followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to 7 followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to 7 followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to 1.5 followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to 1.5 followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to true followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to true followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to false followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to false followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to NaN followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to NaN followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to Infinity followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to Infinity followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to -Infinity followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to -Infinity followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to null followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to null followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to &quot;&quot; should not throw 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to &quot;&quot; followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to &quot;&quot; followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to undefined should not throw 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to undefined followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to undefined followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to 7 should not throw 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to 7 followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to 7 followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to 1.5 should not throw 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to 1.5 followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to 1.5 followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to true should not throw 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to true followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to true followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to false should not throw 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to false followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to false followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to object &quot;[object Object]&quot; should not throw 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to NaN should not throw 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to NaN followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to NaN followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to Infinity should not throw 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to Infinity followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to Infinity followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to -Infinity should not throw 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to -Infinity followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to -Infinity followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to &quot;\0&quot; should not throw 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to &quot;\0&quot; followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to null should not throw 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to null followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to null followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to object &quot;test-toString&quot; should not throw 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS datalist.className (&lt;datalist class&gt;): IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS datalist.hidden: typeof IDL attribute 
+PASS datalist.hidden: IDL get with DOM attribute unset 
+PASS datalist.hidden: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS datalist.hidden: setAttribute() to &quot;&quot; followed by IDL get 
+PASS datalist.hidden: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS datalist.hidden: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS datalist.hidden: setAttribute() to undefined followed by getAttribute() 
+PASS datalist.hidden: setAttribute() to undefined followed by IDL get 
+PASS datalist.hidden: setAttribute() to null followed by getAttribute() 
+PASS datalist.hidden: setAttribute() to null followed by IDL get 
+PASS datalist.hidden: setAttribute() to 7 followed by getAttribute() 
+PASS datalist.hidden: setAttribute() to 7 followed by IDL get 
+PASS datalist.hidden: setAttribute() to 1.5 followed by getAttribute() 
+PASS datalist.hidden: setAttribute() to 1.5 followed by IDL get 
+PASS datalist.hidden: setAttribute() to true followed by getAttribute() 
+PASS datalist.hidden: setAttribute() to true followed by IDL get 
+PASS datalist.hidden: setAttribute() to false followed by getAttribute() 
+PASS datalist.hidden: setAttribute() to false followed by IDL get 
+PASS datalist.hidden: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS datalist.hidden: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS datalist.hidden: setAttribute() to NaN followed by getAttribute() 
+PASS datalist.hidden: setAttribute() to NaN followed by IDL get 
+PASS datalist.hidden: setAttribute() to Infinity followed by getAttribute() 
+PASS datalist.hidden: setAttribute() to Infinity followed by IDL get 
+PASS datalist.hidden: setAttribute() to -Infinity followed by getAttribute() 
+PASS datalist.hidden: setAttribute() to -Infinity followed by IDL get 
+PASS datalist.hidden: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS datalist.hidden: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS datalist.hidden: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS datalist.hidden: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS datalist.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS datalist.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS datalist.hidden: setAttribute() to &quot;hidden&quot; followed by getAttribute() 
+PASS datalist.hidden: setAttribute() to &quot;hidden&quot; followed by IDL get 
+PASS datalist.hidden: IDL set to &quot;&quot; should not throw 
+PASS datalist.hidden: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS datalist.hidden: IDL set to &quot;&quot; followed by IDL get 
+PASS datalist.hidden: IDL set to &quot; foo &quot; should not throw 
+PASS datalist.hidden: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS datalist.hidden: IDL set to &quot; foo &quot; followed by IDL get 
+PASS datalist.hidden: IDL set to undefined should not throw 
+PASS datalist.hidden: IDL set to undefined followed by hasAttribute() 
+PASS datalist.hidden: IDL set to undefined followed by IDL get 
+PASS datalist.hidden: IDL set to null should not throw 
+PASS datalist.hidden: IDL set to null followed by hasAttribute() 
+PASS datalist.hidden: IDL set to null followed by IDL get 
+PASS datalist.hidden: IDL set to 7 should not throw 
+PASS datalist.hidden: IDL set to 7 followed by hasAttribute() 
+PASS datalist.hidden: IDL set to 7 followed by IDL get 
+PASS datalist.hidden: IDL set to 1.5 should not throw 
+PASS datalist.hidden: IDL set to 1.5 followed by hasAttribute() 
+PASS datalist.hidden: IDL set to 1.5 followed by IDL get 
+PASS datalist.hidden: IDL set to true should not throw 
+PASS datalist.hidden: IDL set to true followed by hasAttribute() 
+PASS datalist.hidden: IDL set to true followed by IDL get 
+PASS datalist.hidden: IDL set to false should not throw 
+PASS datalist.hidden: IDL set to false followed by hasAttribute() 
+PASS datalist.hidden: IDL set to false followed by IDL get 
+PASS datalist.hidden: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS datalist.hidden: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS datalist.hidden: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS datalist.hidden: IDL set to NaN should not throw 
+PASS datalist.hidden: IDL set to NaN followed by hasAttribute() 
+PASS datalist.hidden: IDL set to NaN followed by IDL get 
+PASS datalist.hidden: IDL set to Infinity should not throw 
+PASS datalist.hidden: IDL set to Infinity followed by hasAttribute() 
+PASS datalist.hidden: IDL set to Infinity followed by IDL get 
+PASS datalist.hidden: IDL set to -Infinity should not throw 
+PASS datalist.hidden: IDL set to -Infinity followed by hasAttribute() 
+PASS datalist.hidden: IDL set to -Infinity followed by IDL get 
+PASS datalist.hidden: IDL set to &quot;\0&quot; should not throw 
+PASS datalist.hidden: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS datalist.hidden: IDL set to &quot;\0&quot; followed by IDL get 
+PASS datalist.hidden: IDL set to object &quot;test-toString&quot; should not throw 
+PASS datalist.hidden: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS datalist.hidden: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS datalist.hidden: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS datalist.hidden: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS datalist.hidden: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS datalist.accessKey: typeof IDL attribute 
+PASS datalist.accessKey: IDL get with DOM attribute unset 
+PASS datalist.accessKey: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS datalist.accessKey: setAttribute() to &quot;&quot; followed by IDL get 
+PASS datalist.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS datalist.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS datalist.accessKey: setAttribute() to undefined followed by getAttribute() 
+PASS datalist.accessKey: setAttribute() to undefined followed by IDL get 
+PASS datalist.accessKey: setAttribute() to 7 followed by getAttribute() 
+PASS datalist.accessKey: setAttribute() to 7 followed by IDL get 
+PASS datalist.accessKey: setAttribute() to 1.5 followed by getAttribute() 
+PASS datalist.accessKey: setAttribute() to 1.5 followed by IDL get 
+PASS datalist.accessKey: setAttribute() to true followed by getAttribute() 
+PASS datalist.accessKey: setAttribute() to true followed by IDL get 
+PASS datalist.accessKey: setAttribute() to false followed by getAttribute() 
+PASS datalist.accessKey: setAttribute() to false followed by IDL get 
+PASS datalist.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS datalist.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS datalist.accessKey: setAttribute() to NaN followed by getAttribute() 
+PASS datalist.accessKey: setAttribute() to NaN followed by IDL get 
+PASS datalist.accessKey: setAttribute() to Infinity followed by getAttribute() 
+PASS datalist.accessKey: setAttribute() to Infinity followed by IDL get 
+PASS datalist.accessKey: setAttribute() to -Infinity followed by getAttribute() 
+PASS datalist.accessKey: setAttribute() to -Infinity followed by IDL get 
+PASS datalist.accessKey: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS datalist.accessKey: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS datalist.accessKey: setAttribute() to null followed by getAttribute() 
+PASS datalist.accessKey: setAttribute() to null followed by IDL get 
+PASS datalist.accessKey: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS datalist.accessKey: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS datalist.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS datalist.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS datalist.accessKey: IDL set to &quot;&quot; should not throw 
+PASS datalist.accessKey: IDL set to &quot;&quot; followed by getAttribute() 
+PASS datalist.accessKey: IDL set to &quot;&quot; followed by IDL get 
+PASS datalist.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS datalist.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS datalist.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS datalist.accessKey: IDL set to undefined should not throw 
+PASS datalist.accessKey: IDL set to undefined followed by getAttribute() 
+PASS datalist.accessKey: IDL set to undefined followed by IDL get 
+PASS datalist.accessKey: IDL set to 7 should not throw 
+PASS datalist.accessKey: IDL set to 7 followed by getAttribute() 
+PASS datalist.accessKey: IDL set to 7 followed by IDL get 
+PASS datalist.accessKey: IDL set to 1.5 should not throw 
+PASS datalist.accessKey: IDL set to 1.5 followed by getAttribute() 
+PASS datalist.accessKey: IDL set to 1.5 followed by IDL get 
+PASS datalist.accessKey: IDL set to true should not throw 
+PASS datalist.accessKey: IDL set to true followed by getAttribute() 
+PASS datalist.accessKey: IDL set to true followed by IDL get 
+PASS datalist.accessKey: IDL set to false should not throw 
+PASS datalist.accessKey: IDL set to false followed by getAttribute() 
+PASS datalist.accessKey: IDL set to false followed by IDL get 
+PASS datalist.accessKey: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS datalist.accessKey: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS datalist.accessKey: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS datalist.accessKey: IDL set to NaN should not throw 
+PASS datalist.accessKey: IDL set to NaN followed by getAttribute() 
+PASS datalist.accessKey: IDL set to NaN followed by IDL get 
+PASS datalist.accessKey: IDL set to Infinity should not throw 
+PASS datalist.accessKey: IDL set to Infinity followed by getAttribute() 
+PASS datalist.accessKey: IDL set to Infinity followed by IDL get 
+PASS datalist.accessKey: IDL set to -Infinity should not throw 
+PASS datalist.accessKey: IDL set to -Infinity followed by getAttribute() 
+PASS datalist.accessKey: IDL set to -Infinity followed by IDL get 
+PASS datalist.accessKey: IDL set to &quot;\0&quot; should not throw 
+PASS datalist.accessKey: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS datalist.accessKey: IDL set to &quot;\0&quot; followed by IDL get 
+PASS datalist.accessKey: IDL set to null should not throw 
+PASS datalist.accessKey: IDL set to null followed by getAttribute() 
+PASS datalist.accessKey: IDL set to null followed by IDL get 
+PASS datalist.accessKey: IDL set to object &quot;test-toString&quot; should not throw 
+PASS datalist.accessKey: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS datalist.accessKey: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS datalist.accessKey: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS datalist.accessKey: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS datalist.accessKey: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS datalist.tabIndex: typeof IDL attribute 
+PASS datalist.tabIndex: setAttribute() to -36 followed by getAttribute() 
+PASS datalist.tabIndex: setAttribute() to -36 followed by IDL get 
+PASS datalist.tabIndex: setAttribute() to -1 followed by getAttribute() 
+PASS datalist.tabIndex: setAttribute() to -1 followed by IDL get 
+PASS datalist.tabIndex: setAttribute() to 0 followed by getAttribute() 
+PASS datalist.tabIndex: setAttribute() to 0 followed by IDL get 
+PASS datalist.tabIndex: setAttribute() to 1 followed by getAttribute() 
+PASS datalist.tabIndex: setAttribute() to 1 followed by IDL get 
+PASS datalist.tabIndex: setAttribute() to 2147483647 followed by getAttribute() 
+PASS datalist.tabIndex: setAttribute() to 2147483647 followed by IDL get 
+PASS datalist.tabIndex: setAttribute() to -2147483648 followed by getAttribute() 
+PASS datalist.tabIndex: setAttribute() to -2147483648 followed by IDL get 
+PASS datalist.tabIndex: setAttribute() to &quot;-1&quot; followed by getAttribute() 
+PASS datalist.tabIndex: setAttribute() to &quot;-1&quot; followed by IDL get 
+PASS datalist.tabIndex: setAttribute() to &quot;-0&quot; followed by getAttribute() 
+PASS datalist.tabIndex: setAttribute() to &quot;-0&quot; followed by IDL get 
+PASS datalist.tabIndex: setAttribute() to &quot;0&quot; followed by getAttribute() 
+PASS datalist.tabIndex: setAttribute() to &quot;0&quot; followed by IDL get 
+PASS datalist.tabIndex: setAttribute() to &quot;1&quot; followed by getAttribute() 
+PASS datalist.tabIndex: setAttribute() to &quot;1&quot; followed by IDL get 
+PASS datalist.tabIndex: setAttribute() to &quot;\t7&quot; followed by getAttribute() 
+PASS datalist.tabIndex: setAttribute() to &quot;\t7&quot; followed by IDL get 
+PASS datalist.tabIndex: setAttribute() to &quot;\f7&quot; followed by getAttribute() 
+PASS datalist.tabIndex: setAttribute() to &quot;\f7&quot; followed by IDL get 
+PASS datalist.tabIndex: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS datalist.tabIndex: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS datalist.tabIndex: setAttribute() to &quot;\n7&quot; followed by getAttribute() 
+PASS datalist.tabIndex: setAttribute() to &quot;\n7&quot; followed by IDL get 
+PASS datalist.tabIndex: setAttribute() to &quot;\r7&quot; followed by getAttribute() 
+PASS datalist.tabIndex: setAttribute() to &quot;\r7&quot; followed by IDL get 
+PASS datalist.tabIndex: setAttribute() to 1.5 followed by getAttribute() 
+PASS datalist.tabIndex: setAttribute() to 1.5 followed by IDL get 
+PASS datalist.tabIndex: setAttribute() to object &quot;2&quot; followed by getAttribute() 
+PASS datalist.tabIndex: setAttribute() to object &quot;2&quot; followed by IDL get 
+PASS datalist.tabIndex: IDL set to -36 should not throw 
+PASS datalist.tabIndex: IDL set to -36 followed by getAttribute() 
+PASS datalist.tabIndex: IDL set to -36 followed by IDL get 
+PASS datalist.tabIndex: IDL set to -1 should not throw 
+PASS datalist.tabIndex: IDL set to -1 followed by getAttribute() 
+PASS datalist.tabIndex: IDL set to -1 followed by IDL get 
+PASS datalist.tabIndex: IDL set to 0 should not throw 
+PASS datalist.tabIndex: IDL set to 0 followed by getAttribute() 
+PASS datalist.tabIndex: IDL set to 0 followed by IDL get 
+PASS datalist.tabIndex: IDL set to 1 should not throw 
+PASS datalist.tabIndex: IDL set to 1 followed by getAttribute() 
+PASS datalist.tabIndex: IDL set to 1 followed by IDL get 
+PASS datalist.tabIndex: IDL set to 2147483647 should not throw 
+PASS datalist.tabIndex: IDL set to 2147483647 followed by getAttribute() 
+PASS datalist.tabIndex: IDL set to 2147483647 followed by IDL get 
+PASS datalist.tabIndex: IDL set to -2147483648 should not throw 
+PASS datalist.tabIndex: IDL set to -2147483648 followed by getAttribute() 
+PASS datalist.tabIndex: IDL set to -2147483648 followed by IDL get 
+PASS optgroup.title: typeof IDL attribute 
+PASS optgroup.title: IDL get with DOM attribute unset 
+PASS optgroup.title: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS optgroup.title: setAttribute() to &quot;&quot; followed by IDL get 
+PASS optgroup.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS optgroup.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS optgroup.title: setAttribute() to undefined followed by getAttribute() 
+PASS optgroup.title: setAttribute() to undefined followed by IDL get 
+PASS optgroup.title: setAttribute() to 7 followed by getAttribute() 
+PASS optgroup.title: setAttribute() to 7 followed by IDL get 
+PASS optgroup.title: setAttribute() to 1.5 followed by getAttribute() 
+PASS optgroup.title: setAttribute() to 1.5 followed by IDL get 
+PASS optgroup.title: setAttribute() to true followed by getAttribute() 
+PASS optgroup.title: setAttribute() to true followed by IDL get 
+PASS optgroup.title: setAttribute() to false followed by getAttribute() 
+PASS optgroup.title: setAttribute() to false followed by IDL get 
+PASS optgroup.title: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS optgroup.title: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS optgroup.title: setAttribute() to NaN followed by getAttribute() 
+PASS optgroup.title: setAttribute() to NaN followed by IDL get 
+PASS optgroup.title: setAttribute() to Infinity followed by getAttribute() 
+PASS optgroup.title: setAttribute() to Infinity followed by IDL get 
+PASS optgroup.title: setAttribute() to -Infinity followed by getAttribute() 
+PASS optgroup.title: setAttribute() to -Infinity followed by IDL get 
+PASS optgroup.title: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS optgroup.title: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS optgroup.title: setAttribute() to null followed by getAttribute() 
+PASS optgroup.title: setAttribute() to null followed by IDL get 
+PASS optgroup.title: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS optgroup.title: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS optgroup.title: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS optgroup.title: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS optgroup.title: IDL set to &quot;&quot; should not throw 
+PASS optgroup.title: IDL set to &quot;&quot; followed by getAttribute() 
+PASS optgroup.title: IDL set to &quot;&quot; followed by IDL get 
+PASS optgroup.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS optgroup.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS optgroup.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS optgroup.title: IDL set to undefined should not throw 
+PASS optgroup.title: IDL set to undefined followed by getAttribute() 
+PASS optgroup.title: IDL set to undefined followed by IDL get 
+PASS optgroup.title: IDL set to 7 should not throw 
+PASS optgroup.title: IDL set to 7 followed by getAttribute() 
+PASS optgroup.title: IDL set to 7 followed by IDL get 
+PASS optgroup.title: IDL set to 1.5 should not throw 
+PASS optgroup.title: IDL set to 1.5 followed by getAttribute() 
+PASS optgroup.title: IDL set to 1.5 followed by IDL get 
+PASS optgroup.title: IDL set to true should not throw 
+PASS optgroup.title: IDL set to true followed by getAttribute() 
+PASS optgroup.title: IDL set to true followed by IDL get 
+PASS optgroup.title: IDL set to false should not throw 
+PASS optgroup.title: IDL set to false followed by getAttribute() 
+PASS optgroup.title: IDL set to false followed by IDL get 
+PASS optgroup.title: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS optgroup.title: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS optgroup.title: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS optgroup.title: IDL set to NaN should not throw 
+PASS optgroup.title: IDL set to NaN followed by getAttribute() 
+PASS optgroup.title: IDL set to NaN followed by IDL get 
+PASS optgroup.title: IDL set to Infinity should not throw 
+PASS optgroup.title: IDL set to Infinity followed by getAttribute() 
+PASS optgroup.title: IDL set to Infinity followed by IDL get 
+PASS optgroup.title: IDL set to -Infinity should not throw 
+PASS optgroup.title: IDL set to -Infinity followed by getAttribute() 
+PASS optgroup.title: IDL set to -Infinity followed by IDL get 
+PASS optgroup.title: IDL set to &quot;\0&quot; should not throw 
+PASS optgroup.title: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS optgroup.title: IDL set to &quot;\0&quot; followed by IDL get 
+PASS optgroup.title: IDL set to null should not throw 
+PASS optgroup.title: IDL set to null followed by getAttribute() 
+PASS optgroup.title: IDL set to null followed by IDL get 
+PASS optgroup.title: IDL set to object &quot;test-toString&quot; should not throw 
+PASS optgroup.title: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS optgroup.title: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS optgroup.title: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS optgroup.title: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS optgroup.title: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS optgroup.lang: typeof IDL attribute 
+PASS optgroup.lang: IDL get with DOM attribute unset 
+PASS optgroup.lang: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS optgroup.lang: setAttribute() to &quot;&quot; followed by IDL get 
+PASS optgroup.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS optgroup.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS optgroup.lang: setAttribute() to undefined followed by getAttribute() 
+PASS optgroup.lang: setAttribute() to undefined followed by IDL get 
+PASS optgroup.lang: setAttribute() to 7 followed by getAttribute() 
+PASS optgroup.lang: setAttribute() to 7 followed by IDL get 
+PASS optgroup.lang: setAttribute() to 1.5 followed by getAttribute() 
+PASS optgroup.lang: setAttribute() to 1.5 followed by IDL get 
+PASS optgroup.lang: setAttribute() to true followed by getAttribute() 
+PASS optgroup.lang: setAttribute() to true followed by IDL get 
+PASS optgroup.lang: setAttribute() to false followed by getAttribute() 
+PASS optgroup.lang: setAttribute() to false followed by IDL get 
+PASS optgroup.lang: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS optgroup.lang: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS optgroup.lang: setAttribute() to NaN followed by getAttribute() 
+PASS optgroup.lang: setAttribute() to NaN followed by IDL get 
+PASS optgroup.lang: setAttribute() to Infinity followed by getAttribute() 
+PASS optgroup.lang: setAttribute() to Infinity followed by IDL get 
+PASS optgroup.lang: setAttribute() to -Infinity followed by getAttribute() 
+PASS optgroup.lang: setAttribute() to -Infinity followed by IDL get 
+PASS optgroup.lang: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS optgroup.lang: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS optgroup.lang: setAttribute() to null followed by getAttribute() 
+PASS optgroup.lang: setAttribute() to null followed by IDL get 
+PASS optgroup.lang: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS optgroup.lang: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS optgroup.lang: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS optgroup.lang: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS optgroup.lang: IDL set to &quot;&quot; should not throw 
+PASS optgroup.lang: IDL set to &quot;&quot; followed by getAttribute() 
+PASS optgroup.lang: IDL set to &quot;&quot; followed by IDL get 
+PASS optgroup.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS optgroup.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS optgroup.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS optgroup.lang: IDL set to undefined should not throw 
+PASS optgroup.lang: IDL set to undefined followed by getAttribute() 
+PASS optgroup.lang: IDL set to undefined followed by IDL get 
+PASS optgroup.lang: IDL set to 7 should not throw 
+PASS optgroup.lang: IDL set to 7 followed by getAttribute() 
+PASS optgroup.lang: IDL set to 7 followed by IDL get 
+PASS optgroup.lang: IDL set to 1.5 should not throw 
+PASS optgroup.lang: IDL set to 1.5 followed by getAttribute() 
+PASS optgroup.lang: IDL set to 1.5 followed by IDL get 
+PASS optgroup.lang: IDL set to true should not throw 
+PASS optgroup.lang: IDL set to true followed by getAttribute() 
+PASS optgroup.lang: IDL set to true followed by IDL get 
+PASS optgroup.lang: IDL set to false should not throw 
+PASS optgroup.lang: IDL set to false followed by getAttribute() 
+PASS optgroup.lang: IDL set to false followed by IDL get 
+PASS optgroup.lang: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS optgroup.lang: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS optgroup.lang: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS optgroup.lang: IDL set to NaN should not throw 
+PASS optgroup.lang: IDL set to NaN followed by getAttribute() 
+PASS optgroup.lang: IDL set to NaN followed by IDL get 
+PASS optgroup.lang: IDL set to Infinity should not throw 
+PASS optgroup.lang: IDL set to Infinity followed by getAttribute() 
+PASS optgroup.lang: IDL set to Infinity followed by IDL get 
+PASS optgroup.lang: IDL set to -Infinity should not throw 
+PASS optgroup.lang: IDL set to -Infinity followed by getAttribute() 
+PASS optgroup.lang: IDL set to -Infinity followed by IDL get 
+PASS optgroup.lang: IDL set to &quot;\0&quot; should not throw 
+PASS optgroup.lang: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS optgroup.lang: IDL set to &quot;\0&quot; followed by IDL get 
+PASS optgroup.lang: IDL set to null should not throw 
+PASS optgroup.lang: IDL set to null followed by getAttribute() 
+PASS optgroup.lang: IDL set to null followed by IDL get 
+PASS optgroup.lang: IDL set to object &quot;test-toString&quot; should not throw 
+PASS optgroup.lang: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS optgroup.lang: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS optgroup.lang: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS optgroup.lang: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS optgroup.lang: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS optgroup.dir: typeof IDL attribute 
+PASS optgroup.dir: IDL get with DOM attribute unset 
+PASS optgroup.dir: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to &quot;&quot; followed by IDL get 
+PASS optgroup.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS optgroup.dir: setAttribute() to undefined followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to undefined followed by IDL get 
+PASS optgroup.dir: setAttribute() to 7 followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to 7 followed by IDL get 
+PASS optgroup.dir: setAttribute() to 1.5 followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to 1.5 followed by IDL get 
+PASS optgroup.dir: setAttribute() to true followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to true followed by IDL get 
+PASS optgroup.dir: setAttribute() to false followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to false followed by IDL get 
+PASS optgroup.dir: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS optgroup.dir: setAttribute() to NaN followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to NaN followed by IDL get 
+PASS optgroup.dir: setAttribute() to Infinity followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to Infinity followed by IDL get 
+PASS optgroup.dir: setAttribute() to -Infinity followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to -Infinity followed by IDL get 
+PASS optgroup.dir: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS optgroup.dir: setAttribute() to null followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to null followed by IDL get 
+PASS optgroup.dir: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS optgroup.dir: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS optgroup.dir: setAttribute() to &quot;ltr&quot; followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to &quot;ltr&quot; followed by IDL get 
+PASS optgroup.dir: setAttribute() to &quot;xltr&quot; followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to &quot;xltr&quot; followed by IDL get 
+PASS optgroup.dir: setAttribute() to &quot;ltr\0&quot; followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to &quot;ltr\0&quot; followed by IDL get 
+PASS optgroup.dir: setAttribute() to &quot;tr&quot; followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to &quot;tr&quot; followed by IDL get 
+PASS optgroup.dir: setAttribute() to &quot;LTR&quot; followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to &quot;LTR&quot; followed by IDL get 
+PASS optgroup.dir: setAttribute() to &quot;rtl&quot; followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to &quot;rtl&quot; followed by IDL get 
+PASS optgroup.dir: setAttribute() to &quot;xrtl&quot; followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to &quot;xrtl&quot; followed by IDL get 
+PASS optgroup.dir: setAttribute() to &quot;rtl\0&quot; followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to &quot;rtl\0&quot; followed by IDL get 
+PASS optgroup.dir: setAttribute() to &quot;tl&quot; followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to &quot;tl&quot; followed by IDL get 
+PASS optgroup.dir: setAttribute() to &quot;RTL&quot; followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to &quot;RTL&quot; followed by IDL get 
+PASS optgroup.dir: setAttribute() to &quot;auto&quot; followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to &quot;auto&quot; followed by IDL get 
+PASS optgroup.dir: setAttribute() to &quot;xauto&quot; followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to &quot;xauto&quot; followed by IDL get 
+PASS optgroup.dir: setAttribute() to &quot;auto\0&quot; followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to &quot;auto\0&quot; followed by IDL get 
+PASS optgroup.dir: setAttribute() to &quot;uto&quot; followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to &quot;uto&quot; followed by IDL get 
+PASS optgroup.dir: setAttribute() to &quot;AUTO&quot; followed by getAttribute() 
+PASS optgroup.dir: setAttribute() to &quot;AUTO&quot; followed by IDL get 
+PASS optgroup.dir: IDL set to &quot;&quot; should not throw 
+PASS optgroup.dir: IDL set to &quot;&quot; followed by getAttribute() 
+PASS optgroup.dir: IDL set to &quot;&quot; followed by IDL get 
+PASS optgroup.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS optgroup.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS optgroup.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS optgroup.dir: IDL set to undefined should not throw 
+PASS optgroup.dir: IDL set to undefined followed by getAttribute() 
+PASS optgroup.dir: IDL set to undefined followed by IDL get 
+PASS optgroup.dir: IDL set to 7 should not throw 
+PASS optgroup.dir: IDL set to 7 followed by getAttribute() 
+PASS optgroup.dir: IDL set to 7 followed by IDL get 
+PASS optgroup.dir: IDL set to 1.5 should not throw 
+PASS optgroup.dir: IDL set to 1.5 followed by getAttribute() 
+PASS optgroup.dir: IDL set to 1.5 followed by IDL get 
+PASS optgroup.dir: IDL set to true should not throw 
+PASS optgroup.dir: IDL set to true followed by getAttribute() 
+PASS optgroup.dir: IDL set to true followed by IDL get 
+PASS optgroup.dir: IDL set to false should not throw 
+PASS optgroup.dir: IDL set to false followed by getAttribute() 
+PASS optgroup.dir: IDL set to false followed by IDL get 
+PASS optgroup.dir: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS optgroup.dir: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS optgroup.dir: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS optgroup.dir: IDL set to NaN should not throw 
+PASS optgroup.dir: IDL set to NaN followed by getAttribute() 
+PASS optgroup.dir: IDL set to NaN followed by IDL get 
+PASS optgroup.dir: IDL set to Infinity should not throw 
+PASS optgroup.dir: IDL set to Infinity followed by getAttribute() 
+PASS optgroup.dir: IDL set to Infinity followed by IDL get 
+PASS optgroup.dir: IDL set to -Infinity should not throw 
+PASS optgroup.dir: IDL set to -Infinity followed by getAttribute() 
+PASS optgroup.dir: IDL set to -Infinity followed by IDL get 
+PASS optgroup.dir: IDL set to &quot;\0&quot; should not throw 
+PASS optgroup.dir: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS optgroup.dir: IDL set to &quot;\0&quot; followed by IDL get 
+PASS optgroup.dir: IDL set to null should not throw 
+PASS optgroup.dir: IDL set to null followed by IDL get 
+PASS optgroup.dir: IDL set to object &quot;test-toString&quot; should not throw 
+PASS optgroup.dir: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS optgroup.dir: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS optgroup.dir: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS optgroup.dir: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS optgroup.dir: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS optgroup.dir: IDL set to &quot;ltr&quot; should not throw 
+PASS optgroup.dir: IDL set to &quot;ltr&quot; followed by getAttribute() 
+PASS optgroup.dir: IDL set to &quot;ltr&quot; followed by IDL get 
+PASS optgroup.dir: IDL set to &quot;xltr&quot; should not throw 
+PASS optgroup.dir: IDL set to &quot;xltr&quot; followed by getAttribute() 
+PASS optgroup.dir: IDL set to &quot;xltr&quot; followed by IDL get 
+PASS optgroup.dir: IDL set to &quot;ltr\0&quot; should not throw 
+PASS optgroup.dir: IDL set to &quot;ltr\0&quot; followed by getAttribute() 
+PASS optgroup.dir: IDL set to &quot;ltr\0&quot; followed by IDL get 
+PASS optgroup.dir: IDL set to &quot;tr&quot; should not throw 
+PASS optgroup.dir: IDL set to &quot;tr&quot; followed by getAttribute() 
+PASS optgroup.dir: IDL set to &quot;tr&quot; followed by IDL get 
+PASS optgroup.dir: IDL set to &quot;LTR&quot; should not throw 
+PASS optgroup.dir: IDL set to &quot;LTR&quot; followed by getAttribute() 
+PASS optgroup.dir: IDL set to &quot;LTR&quot; followed by IDL get 
+PASS optgroup.dir: IDL set to &quot;rtl&quot; should not throw 
+PASS optgroup.dir: IDL set to &quot;rtl&quot; followed by getAttribute() 
+PASS optgroup.dir: IDL set to &quot;rtl&quot; followed by IDL get 
+PASS optgroup.dir: IDL set to &quot;xrtl&quot; should not throw 
+PASS optgroup.dir: IDL set to &quot;xrtl&quot; followed by getAttribute() 
+PASS optgroup.dir: IDL set to &quot;xrtl&quot; followed by IDL get 
+PASS optgroup.dir: IDL set to &quot;rtl\0&quot; should not throw 
+PASS optgroup.dir: IDL set to &quot;rtl\0&quot; followed by getAttribute() 
+PASS optgroup.dir: IDL set to &quot;rtl\0&quot; followed by IDL get 
+PASS optgroup.dir: IDL set to &quot;tl&quot; should not throw 
+PASS optgroup.dir: IDL set to &quot;tl&quot; followed by getAttribute() 
+PASS optgroup.dir: IDL set to &quot;tl&quot; followed by IDL get 
+PASS optgroup.dir: IDL set to &quot;RTL&quot; should not throw 
+PASS optgroup.dir: IDL set to &quot;RTL&quot; followed by getAttribute() 
+PASS optgroup.dir: IDL set to &quot;RTL&quot; followed by IDL get 
+PASS optgroup.dir: IDL set to &quot;auto&quot; should not throw 
+PASS optgroup.dir: IDL set to &quot;auto&quot; followed by getAttribute() 
+PASS optgroup.dir: IDL set to &quot;auto&quot; followed by IDL get 
+PASS optgroup.dir: IDL set to &quot;xauto&quot; should not throw 
+PASS optgroup.dir: IDL set to &quot;xauto&quot; followed by getAttribute() 
+PASS optgroup.dir: IDL set to &quot;xauto&quot; followed by IDL get 
+PASS optgroup.dir: IDL set to &quot;auto\0&quot; should not throw 
+PASS optgroup.dir: IDL set to &quot;auto\0&quot; followed by getAttribute() 
+PASS optgroup.dir: IDL set to &quot;auto\0&quot; followed by IDL get 
+PASS optgroup.dir: IDL set to &quot;uto&quot; should not throw 
+PASS optgroup.dir: IDL set to &quot;uto&quot; followed by getAttribute() 
+PASS optgroup.dir: IDL set to &quot;uto&quot; followed by IDL get 
+PASS optgroup.dir: IDL set to &quot;AUTO&quot; should not throw 
+PASS optgroup.dir: IDL set to &quot;AUTO&quot; followed by getAttribute() 
+PASS optgroup.dir: IDL set to &quot;AUTO&quot; followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): typeof IDL attribute 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL get with DOM attribute unset 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to &quot;&quot; followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to undefined followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to undefined followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to 7 followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to 7 followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to 1.5 followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to 1.5 followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to true followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to true followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to false followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to false followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to NaN followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to NaN followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to Infinity followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to Infinity followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to -Infinity followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to -Infinity followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to null followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to null followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to &quot;&quot; should not throw 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to &quot;&quot; followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to &quot;&quot; followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to undefined should not throw 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to undefined followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to undefined followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to 7 should not throw 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to 7 followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to 7 followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to 1.5 should not throw 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to 1.5 followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to 1.5 followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to true should not throw 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to true followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to true followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to false should not throw 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to false followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to false followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to object &quot;[object Object]&quot; should not throw 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to NaN should not throw 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to NaN followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to NaN followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to Infinity should not throw 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to Infinity followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to Infinity followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to -Infinity should not throw 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to -Infinity followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to -Infinity followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to &quot;\0&quot; should not throw 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to &quot;\0&quot; followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to null should not throw 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to null followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to null followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to object &quot;test-toString&quot; should not throw 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS optgroup.className (&lt;optgroup class&gt;): IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS optgroup.hidden: typeof IDL attribute 
+PASS optgroup.hidden: IDL get with DOM attribute unset 
+PASS optgroup.hidden: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS optgroup.hidden: setAttribute() to &quot;&quot; followed by IDL get 
+PASS optgroup.hidden: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS optgroup.hidden: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS optgroup.hidden: setAttribute() to undefined followed by getAttribute() 
+PASS optgroup.hidden: setAttribute() to undefined followed by IDL get 
+PASS optgroup.hidden: setAttribute() to null followed by getAttribute() 
+PASS optgroup.hidden: setAttribute() to null followed by IDL get 
+PASS optgroup.hidden: setAttribute() to 7 followed by getAttribute() 
+PASS optgroup.hidden: setAttribute() to 7 followed by IDL get 
+PASS optgroup.hidden: setAttribute() to 1.5 followed by getAttribute() 
+PASS optgroup.hidden: setAttribute() to 1.5 followed by IDL get 
+PASS optgroup.hidden: setAttribute() to true followed by getAttribute() 
+PASS optgroup.hidden: setAttribute() to true followed by IDL get 
+PASS optgroup.hidden: setAttribute() to false followed by getAttribute() 
+PASS optgroup.hidden: setAttribute() to false followed by IDL get 
+PASS optgroup.hidden: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS optgroup.hidden: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS optgroup.hidden: setAttribute() to NaN followed by getAttribute() 
+PASS optgroup.hidden: setAttribute() to NaN followed by IDL get 
+PASS optgroup.hidden: setAttribute() to Infinity followed by getAttribute() 
+PASS optgroup.hidden: setAttribute() to Infinity followed by IDL get 
+PASS optgroup.hidden: setAttribute() to -Infinity followed by getAttribute() 
+PASS optgroup.hidden: setAttribute() to -Infinity followed by IDL get 
+PASS optgroup.hidden: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS optgroup.hidden: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS optgroup.hidden: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS optgroup.hidden: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS optgroup.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS optgroup.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS optgroup.hidden: setAttribute() to &quot;hidden&quot; followed by getAttribute() 
+PASS optgroup.hidden: setAttribute() to &quot;hidden&quot; followed by IDL get 
+PASS optgroup.hidden: IDL set to &quot;&quot; should not throw 
+PASS optgroup.hidden: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS optgroup.hidden: IDL set to &quot;&quot; followed by IDL get 
+PASS optgroup.hidden: IDL set to &quot; foo &quot; should not throw 
+PASS optgroup.hidden: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS optgroup.hidden: IDL set to &quot; foo &quot; followed by IDL get 
+PASS optgroup.hidden: IDL set to undefined should not throw 
+PASS optgroup.hidden: IDL set to undefined followed by hasAttribute() 
+PASS optgroup.hidden: IDL set to undefined followed by IDL get 
+PASS optgroup.hidden: IDL set to null should not throw 
+PASS optgroup.hidden: IDL set to null followed by hasAttribute() 
+PASS optgroup.hidden: IDL set to null followed by IDL get 
+PASS optgroup.hidden: IDL set to 7 should not throw 
+PASS optgroup.hidden: IDL set to 7 followed by hasAttribute() 
+PASS optgroup.hidden: IDL set to 7 followed by IDL get 
+PASS optgroup.hidden: IDL set to 1.5 should not throw 
+PASS optgroup.hidden: IDL set to 1.5 followed by hasAttribute() 
+PASS optgroup.hidden: IDL set to 1.5 followed by IDL get 
+PASS optgroup.hidden: IDL set to true should not throw 
+PASS optgroup.hidden: IDL set to true followed by hasAttribute() 
+PASS optgroup.hidden: IDL set to true followed by IDL get 
+PASS optgroup.hidden: IDL set to false should not throw 
+PASS optgroup.hidden: IDL set to false followed by hasAttribute() 
+PASS optgroup.hidden: IDL set to false followed by IDL get 
+PASS optgroup.hidden: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS optgroup.hidden: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS optgroup.hidden: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS optgroup.hidden: IDL set to NaN should not throw 
+PASS optgroup.hidden: IDL set to NaN followed by hasAttribute() 
+PASS optgroup.hidden: IDL set to NaN followed by IDL get 
+PASS optgroup.hidden: IDL set to Infinity should not throw 
+PASS optgroup.hidden: IDL set to Infinity followed by hasAttribute() 
+PASS optgroup.hidden: IDL set to Infinity followed by IDL get 
+PASS optgroup.hidden: IDL set to -Infinity should not throw 
+PASS optgroup.hidden: IDL set to -Infinity followed by hasAttribute() 
+PASS optgroup.hidden: IDL set to -Infinity followed by IDL get 
+PASS optgroup.hidden: IDL set to &quot;\0&quot; should not throw 
+PASS optgroup.hidden: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS optgroup.hidden: IDL set to &quot;\0&quot; followed by IDL get 
+PASS optgroup.hidden: IDL set to object &quot;test-toString&quot; should not throw 
+PASS optgroup.hidden: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS optgroup.hidden: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS optgroup.hidden: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS optgroup.hidden: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS optgroup.hidden: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS optgroup.accessKey: typeof IDL attribute 
+PASS optgroup.accessKey: IDL get with DOM attribute unset 
+PASS optgroup.accessKey: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS optgroup.accessKey: setAttribute() to &quot;&quot; followed by IDL get 
+PASS optgroup.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS optgroup.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS optgroup.accessKey: setAttribute() to undefined followed by getAttribute() 
+PASS optgroup.accessKey: setAttribute() to undefined followed by IDL get 
+PASS optgroup.accessKey: setAttribute() to 7 followed by getAttribute() 
+PASS optgroup.accessKey: setAttribute() to 7 followed by IDL get 
+PASS optgroup.accessKey: setAttribute() to 1.5 followed by getAttribute() 
+PASS optgroup.accessKey: setAttribute() to 1.5 followed by IDL get 
+PASS optgroup.accessKey: setAttribute() to true followed by getAttribute() 
+PASS optgroup.accessKey: setAttribute() to true followed by IDL get 
+PASS optgroup.accessKey: setAttribute() to false followed by getAttribute() 
+PASS optgroup.accessKey: setAttribute() to false followed by IDL get 
+PASS optgroup.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS optgroup.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS optgroup.accessKey: setAttribute() to NaN followed by getAttribute() 
+PASS optgroup.accessKey: setAttribute() to NaN followed by IDL get 
+PASS optgroup.accessKey: setAttribute() to Infinity followed by getAttribute() 
+PASS optgroup.accessKey: setAttribute() to Infinity followed by IDL get 
+PASS optgroup.accessKey: setAttribute() to -Infinity followed by getAttribute() 
+PASS optgroup.accessKey: setAttribute() to -Infinity followed by IDL get 
+PASS optgroup.accessKey: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS optgroup.accessKey: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS optgroup.accessKey: setAttribute() to null followed by getAttribute() 
+PASS optgroup.accessKey: setAttribute() to null followed by IDL get 
+PASS optgroup.accessKey: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS optgroup.accessKey: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS optgroup.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS optgroup.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS optgroup.accessKey: IDL set to &quot;&quot; should not throw 
+PASS optgroup.accessKey: IDL set to &quot;&quot; followed by getAttribute() 
+PASS optgroup.accessKey: IDL set to &quot;&quot; followed by IDL get 
+PASS optgroup.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS optgroup.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS optgroup.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS optgroup.accessKey: IDL set to undefined should not throw 
+PASS optgroup.accessKey: IDL set to undefined followed by getAttribute() 
+PASS optgroup.accessKey: IDL set to undefined followed by IDL get 
+PASS optgroup.accessKey: IDL set to 7 should not throw 
+PASS optgroup.accessKey: IDL set to 7 followed by getAttribute() 
+PASS optgroup.accessKey: IDL set to 7 followed by IDL get 
+PASS optgroup.accessKey: IDL set to 1.5 should not throw 
+PASS optgroup.accessKey: IDL set to 1.5 followed by getAttribute() 
+PASS optgroup.accessKey: IDL set to 1.5 followed by IDL get 
+PASS optgroup.accessKey: IDL set to true should not throw 
+PASS optgroup.accessKey: IDL set to true followed by getAttribute() 
+PASS optgroup.accessKey: IDL set to true followed by IDL get 
+PASS optgroup.accessKey: IDL set to false should not throw 
+PASS optgroup.accessKey: IDL set to false followed by getAttribute() 
+PASS optgroup.accessKey: IDL set to false followed by IDL get 
+PASS optgroup.accessKey: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS optgroup.accessKey: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS optgroup.accessKey: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS optgroup.accessKey: IDL set to NaN should not throw 
+PASS optgroup.accessKey: IDL set to NaN followed by getAttribute() 
+PASS optgroup.accessKey: IDL set to NaN followed by IDL get 
+PASS optgroup.accessKey: IDL set to Infinity should not throw 
+PASS optgroup.accessKey: IDL set to Infinity followed by getAttribute() 
+PASS optgroup.accessKey: IDL set to Infinity followed by IDL get 
+PASS optgroup.accessKey: IDL set to -Infinity should not throw 
+PASS optgroup.accessKey: IDL set to -Infinity followed by getAttribute() 
+PASS optgroup.accessKey: IDL set to -Infinity followed by IDL get 
+PASS optgroup.accessKey: IDL set to &quot;\0&quot; should not throw 
+PASS optgroup.accessKey: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS optgroup.accessKey: IDL set to &quot;\0&quot; followed by IDL get 
+PASS optgroup.accessKey: IDL set to null should not throw 
+PASS optgroup.accessKey: IDL set to null followed by getAttribute() 
+PASS optgroup.accessKey: IDL set to null followed by IDL get 
+PASS optgroup.accessKey: IDL set to object &quot;test-toString&quot; should not throw 
+PASS optgroup.accessKey: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS optgroup.accessKey: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS optgroup.accessKey: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS optgroup.accessKey: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS optgroup.accessKey: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS optgroup.tabIndex: typeof IDL attribute 
+PASS optgroup.tabIndex: setAttribute() to -36 followed by getAttribute() 
+PASS optgroup.tabIndex: setAttribute() to -36 followed by IDL get 
+PASS optgroup.tabIndex: setAttribute() to -1 followed by getAttribute() 
+PASS optgroup.tabIndex: setAttribute() to -1 followed by IDL get 
+PASS optgroup.tabIndex: setAttribute() to 0 followed by getAttribute() 
+PASS optgroup.tabIndex: setAttribute() to 0 followed by IDL get 
+PASS optgroup.tabIndex: setAttribute() to 1 followed by getAttribute() 
+PASS optgroup.tabIndex: setAttribute() to 1 followed by IDL get 
+PASS optgroup.tabIndex: setAttribute() to 2147483647 followed by getAttribute() 
+PASS optgroup.tabIndex: setAttribute() to 2147483647 followed by IDL get 
+PASS optgroup.tabIndex: setAttribute() to -2147483648 followed by getAttribute() 
+PASS optgroup.tabIndex: setAttribute() to -2147483648 followed by IDL get 
+PASS optgroup.tabIndex: setAttribute() to &quot;-1&quot; followed by getAttribute() 
+PASS optgroup.tabIndex: setAttribute() to &quot;-1&quot; followed by IDL get 
+PASS optgroup.tabIndex: setAttribute() to &quot;-0&quot; followed by getAttribute() 
+PASS optgroup.tabIndex: setAttribute() to &quot;-0&quot; followed by IDL get 
+PASS optgroup.tabIndex: setAttribute() to &quot;0&quot; followed by getAttribute() 
+PASS optgroup.tabIndex: setAttribute() to &quot;0&quot; followed by IDL get 
+PASS optgroup.tabIndex: setAttribute() to &quot;1&quot; followed by getAttribute() 
+PASS optgroup.tabIndex: setAttribute() to &quot;1&quot; followed by IDL get 
+PASS optgroup.tabIndex: setAttribute() to &quot;\t7&quot; followed by getAttribute() 
+PASS optgroup.tabIndex: setAttribute() to &quot;\t7&quot; followed by IDL get 
+PASS optgroup.tabIndex: setAttribute() to &quot;\f7&quot; followed by getAttribute() 
+PASS optgroup.tabIndex: setAttribute() to &quot;\f7&quot; followed by IDL get 
+PASS optgroup.tabIndex: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS optgroup.tabIndex: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS optgroup.tabIndex: setAttribute() to &quot;\n7&quot; followed by getAttribute() 
+PASS optgroup.tabIndex: setAttribute() to &quot;\n7&quot; followed by IDL get 
+PASS optgroup.tabIndex: setAttribute() to &quot;\r7&quot; followed by getAttribute() 
+PASS optgroup.tabIndex: setAttribute() to &quot;\r7&quot; followed by IDL get 
+PASS optgroup.tabIndex: setAttribute() to 1.5 followed by getAttribute() 
+PASS optgroup.tabIndex: setAttribute() to 1.5 followed by IDL get 
+PASS optgroup.tabIndex: setAttribute() to object &quot;2&quot; followed by getAttribute() 
+PASS optgroup.tabIndex: setAttribute() to object &quot;2&quot; followed by IDL get 
+PASS optgroup.tabIndex: IDL set to -36 should not throw 
+PASS optgroup.tabIndex: IDL set to -36 followed by getAttribute() 
+PASS optgroup.tabIndex: IDL set to -36 followed by IDL get 
+PASS optgroup.tabIndex: IDL set to -1 should not throw 
+PASS optgroup.tabIndex: IDL set to -1 followed by getAttribute() 
+PASS optgroup.tabIndex: IDL set to -1 followed by IDL get 
+PASS optgroup.tabIndex: IDL set to 0 should not throw 
+PASS optgroup.tabIndex: IDL set to 0 followed by getAttribute() 
+PASS optgroup.tabIndex: IDL set to 0 followed by IDL get 
+PASS optgroup.tabIndex: IDL set to 1 should not throw 
+PASS optgroup.tabIndex: IDL set to 1 followed by getAttribute() 
+PASS optgroup.tabIndex: IDL set to 1 followed by IDL get 
+PASS optgroup.tabIndex: IDL set to 2147483647 should not throw 
+PASS optgroup.tabIndex: IDL set to 2147483647 followed by getAttribute() 
+PASS optgroup.tabIndex: IDL set to 2147483647 followed by IDL get 
+PASS optgroup.tabIndex: IDL set to -2147483648 should not throw 
+PASS optgroup.tabIndex: IDL set to -2147483648 followed by getAttribute() 
+PASS optgroup.tabIndex: IDL set to -2147483648 followed by IDL get 
+PASS optgroup.disabled: typeof IDL attribute 
+PASS optgroup.disabled: IDL get with DOM attribute unset 
+PASS optgroup.disabled: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS optgroup.disabled: setAttribute() to &quot;&quot; followed by IDL get 
+PASS optgroup.disabled: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS optgroup.disabled: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS optgroup.disabled: setAttribute() to undefined followed by getAttribute() 
+PASS optgroup.disabled: setAttribute() to undefined followed by IDL get 
+PASS optgroup.disabled: setAttribute() to null followed by getAttribute() 
+PASS optgroup.disabled: setAttribute() to null followed by IDL get 
+PASS optgroup.disabled: setAttribute() to 7 followed by getAttribute() 
+PASS optgroup.disabled: setAttribute() to 7 followed by IDL get 
+PASS optgroup.disabled: setAttribute() to 1.5 followed by getAttribute() 
+PASS optgroup.disabled: setAttribute() to 1.5 followed by IDL get 
+PASS optgroup.disabled: setAttribute() to true followed by getAttribute() 
+PASS optgroup.disabled: setAttribute() to true followed by IDL get 
+PASS optgroup.disabled: setAttribute() to false followed by getAttribute() 
+PASS optgroup.disabled: setAttribute() to false followed by IDL get 
+PASS optgroup.disabled: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS optgroup.disabled: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS optgroup.disabled: setAttribute() to NaN followed by getAttribute() 
+PASS optgroup.disabled: setAttribute() to NaN followed by IDL get 
+PASS optgroup.disabled: setAttribute() to Infinity followed by getAttribute() 
+PASS optgroup.disabled: setAttribute() to Infinity followed by IDL get 
+PASS optgroup.disabled: setAttribute() to -Infinity followed by getAttribute() 
+PASS optgroup.disabled: setAttribute() to -Infinity followed by IDL get 
+PASS optgroup.disabled: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS optgroup.disabled: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS optgroup.disabled: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS optgroup.disabled: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS optgroup.disabled: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS optgroup.disabled: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS optgroup.disabled: setAttribute() to &quot;disabled&quot; followed by getAttribute() 
+PASS optgroup.disabled: setAttribute() to &quot;disabled&quot; followed by IDL get 
+PASS optgroup.disabled: IDL set to &quot;&quot; should not throw 
+PASS optgroup.disabled: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS optgroup.disabled: IDL set to &quot;&quot; followed by IDL get 
+PASS optgroup.disabled: IDL set to &quot; foo &quot; should not throw 
+PASS optgroup.disabled: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS optgroup.disabled: IDL set to &quot; foo &quot; followed by IDL get 
+PASS optgroup.disabled: IDL set to undefined should not throw 
+PASS optgroup.disabled: IDL set to undefined followed by hasAttribute() 
+PASS optgroup.disabled: IDL set to undefined followed by IDL get 
+PASS optgroup.disabled: IDL set to null should not throw 
+PASS optgroup.disabled: IDL set to null followed by hasAttribute() 
+PASS optgroup.disabled: IDL set to null followed by IDL get 
+PASS optgroup.disabled: IDL set to 7 should not throw 
+PASS optgroup.disabled: IDL set to 7 followed by hasAttribute() 
+PASS optgroup.disabled: IDL set to 7 followed by IDL get 
+PASS optgroup.disabled: IDL set to 1.5 should not throw 
+PASS optgroup.disabled: IDL set to 1.5 followed by hasAttribute() 
+PASS optgroup.disabled: IDL set to 1.5 followed by IDL get 
+PASS optgroup.disabled: IDL set to true should not throw 
+PASS optgroup.disabled: IDL set to true followed by hasAttribute() 
+PASS optgroup.disabled: IDL set to true followed by IDL get 
+PASS optgroup.disabled: IDL set to false should not throw 
+PASS optgroup.disabled: IDL set to false followed by hasAttribute() 
+PASS optgroup.disabled: IDL set to false followed by IDL get 
+PASS optgroup.disabled: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS optgroup.disabled: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS optgroup.disabled: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS optgroup.disabled: IDL set to NaN should not throw 
+PASS optgroup.disabled: IDL set to NaN followed by hasAttribute() 
+PASS optgroup.disabled: IDL set to NaN followed by IDL get 
+PASS optgroup.disabled: IDL set to Infinity should not throw 
+PASS optgroup.disabled: IDL set to Infinity followed by hasAttribute() 
+PASS optgroup.disabled: IDL set to Infinity followed by IDL get 
+PASS optgroup.disabled: IDL set to -Infinity should not throw 
+PASS optgroup.disabled: IDL set to -Infinity followed by hasAttribute() 
+PASS optgroup.disabled: IDL set to -Infinity followed by IDL get 
+PASS optgroup.disabled: IDL set to &quot;\0&quot; should not throw 
+PASS optgroup.disabled: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS optgroup.disabled: IDL set to &quot;\0&quot; followed by IDL get 
+PASS optgroup.disabled: IDL set to object &quot;test-toString&quot; should not throw 
+PASS optgroup.disabled: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS optgroup.disabled: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS optgroup.disabled: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS optgroup.disabled: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS optgroup.disabled: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS optgroup.label: typeof IDL attribute 
+PASS optgroup.label: IDL get with DOM attribute unset 
+PASS optgroup.label: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS optgroup.label: setAttribute() to &quot;&quot; followed by IDL get 
+PASS optgroup.label: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS optgroup.label: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS optgroup.label: setAttribute() to undefined followed by getAttribute() 
+PASS optgroup.label: setAttribute() to undefined followed by IDL get 
+PASS optgroup.label: setAttribute() to 7 followed by getAttribute() 
+PASS optgroup.label: setAttribute() to 7 followed by IDL get 
+PASS optgroup.label: setAttribute() to 1.5 followed by getAttribute() 
+PASS optgroup.label: setAttribute() to 1.5 followed by IDL get 
+PASS optgroup.label: setAttribute() to true followed by getAttribute() 
+PASS optgroup.label: setAttribute() to true followed by IDL get 
+PASS optgroup.label: setAttribute() to false followed by getAttribute() 
+PASS optgroup.label: setAttribute() to false followed by IDL get 
+PASS optgroup.label: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS optgroup.label: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS optgroup.label: setAttribute() to NaN followed by getAttribute() 
+PASS optgroup.label: setAttribute() to NaN followed by IDL get 
+PASS optgroup.label: setAttribute() to Infinity followed by getAttribute() 
+PASS optgroup.label: setAttribute() to Infinity followed by IDL get 
+PASS optgroup.label: setAttribute() to -Infinity followed by getAttribute() 
+PASS optgroup.label: setAttribute() to -Infinity followed by IDL get 
+PASS optgroup.label: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS optgroup.label: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS optgroup.label: setAttribute() to null followed by getAttribute() 
+PASS optgroup.label: setAttribute() to null followed by IDL get 
+PASS optgroup.label: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS optgroup.label: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS optgroup.label: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS optgroup.label: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS optgroup.label: IDL set to &quot;&quot; should not throw 
+PASS optgroup.label: IDL set to &quot;&quot; followed by getAttribute() 
+PASS optgroup.label: IDL set to &quot;&quot; followed by IDL get 
+PASS optgroup.label: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS optgroup.label: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS optgroup.label: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS optgroup.label: IDL set to undefined should not throw 
+PASS optgroup.label: IDL set to undefined followed by getAttribute() 
+PASS optgroup.label: IDL set to undefined followed by IDL get 
+PASS optgroup.label: IDL set to 7 should not throw 
+PASS optgroup.label: IDL set to 7 followed by getAttribute() 
+PASS optgroup.label: IDL set to 7 followed by IDL get 
+PASS optgroup.label: IDL set to 1.5 should not throw 
+PASS optgroup.label: IDL set to 1.5 followed by getAttribute() 
+PASS optgroup.label: IDL set to 1.5 followed by IDL get 
+PASS optgroup.label: IDL set to true should not throw 
+PASS optgroup.label: IDL set to true followed by getAttribute() 
+PASS optgroup.label: IDL set to true followed by IDL get 
+PASS optgroup.label: IDL set to false should not throw 
+PASS optgroup.label: IDL set to false followed by getAttribute() 
+PASS optgroup.label: IDL set to false followed by IDL get 
+PASS optgroup.label: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS optgroup.label: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS optgroup.label: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS optgroup.label: IDL set to NaN should not throw 
+PASS optgroup.label: IDL set to NaN followed by getAttribute() 
+PASS optgroup.label: IDL set to NaN followed by IDL get 
+PASS optgroup.label: IDL set to Infinity should not throw 
+PASS optgroup.label: IDL set to Infinity followed by getAttribute() 
+PASS optgroup.label: IDL set to Infinity followed by IDL get 
+PASS optgroup.label: IDL set to -Infinity should not throw 
+PASS optgroup.label: IDL set to -Infinity followed by getAttribute() 
+PASS optgroup.label: IDL set to -Infinity followed by IDL get 
+PASS optgroup.label: IDL set to &quot;\0&quot; should not throw 
+PASS optgroup.label: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS optgroup.label: IDL set to &quot;\0&quot; followed by IDL get 
+PASS optgroup.label: IDL set to null should not throw 
+PASS optgroup.label: IDL set to null followed by getAttribute() 
+PASS optgroup.label: IDL set to null followed by IDL get 
+PASS optgroup.label: IDL set to object &quot;test-toString&quot; should not throw 
+PASS optgroup.label: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS optgroup.label: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS optgroup.label: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS optgroup.label: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS optgroup.label: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS option.title: typeof IDL attribute 
+PASS option.title: IDL get with DOM attribute unset 
+PASS option.title: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS option.title: setAttribute() to &quot;&quot; followed by IDL get 
+PASS option.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS option.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS option.title: setAttribute() to undefined followed by getAttribute() 
+PASS option.title: setAttribute() to undefined followed by IDL get 
+PASS option.title: setAttribute() to 7 followed by getAttribute() 
+PASS option.title: setAttribute() to 7 followed by IDL get 
+PASS option.title: setAttribute() to 1.5 followed by getAttribute() 
+PASS option.title: setAttribute() to 1.5 followed by IDL get 
+PASS option.title: setAttribute() to true followed by getAttribute() 
+PASS option.title: setAttribute() to true followed by IDL get 
+PASS option.title: setAttribute() to false followed by getAttribute() 
+PASS option.title: setAttribute() to false followed by IDL get 
+PASS option.title: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS option.title: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS option.title: setAttribute() to NaN followed by getAttribute() 
+PASS option.title: setAttribute() to NaN followed by IDL get 
+PASS option.title: setAttribute() to Infinity followed by getAttribute() 
+PASS option.title: setAttribute() to Infinity followed by IDL get 
+PASS option.title: setAttribute() to -Infinity followed by getAttribute() 
+PASS option.title: setAttribute() to -Infinity followed by IDL get 
+PASS option.title: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS option.title: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS option.title: setAttribute() to null followed by getAttribute() 
+PASS option.title: setAttribute() to null followed by IDL get 
+PASS option.title: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS option.title: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS option.title: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS option.title: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS option.title: IDL set to &quot;&quot; should not throw 
+PASS option.title: IDL set to &quot;&quot; followed by getAttribute() 
+PASS option.title: IDL set to &quot;&quot; followed by IDL get 
+PASS option.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS option.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS option.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS option.title: IDL set to undefined should not throw 
+PASS option.title: IDL set to undefined followed by getAttribute() 
+PASS option.title: IDL set to undefined followed by IDL get 
+PASS option.title: IDL set to 7 should not throw 
+PASS option.title: IDL set to 7 followed by getAttribute() 
+PASS option.title: IDL set to 7 followed by IDL get 
+PASS option.title: IDL set to 1.5 should not throw 
+PASS option.title: IDL set to 1.5 followed by getAttribute() 
+PASS option.title: IDL set to 1.5 followed by IDL get 
+PASS option.title: IDL set to true should not throw 
+PASS option.title: IDL set to true followed by getAttribute() 
+PASS option.title: IDL set to true followed by IDL get 
+PASS option.title: IDL set to false should not throw 
+PASS option.title: IDL set to false followed by getAttribute() 
+PASS option.title: IDL set to false followed by IDL get 
+PASS option.title: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS option.title: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS option.title: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS option.title: IDL set to NaN should not throw 
+PASS option.title: IDL set to NaN followed by getAttribute() 
+PASS option.title: IDL set to NaN followed by IDL get 
+PASS option.title: IDL set to Infinity should not throw 
+PASS option.title: IDL set to Infinity followed by getAttribute() 
+PASS option.title: IDL set to Infinity followed by IDL get 
+PASS option.title: IDL set to -Infinity should not throw 
+PASS option.title: IDL set to -Infinity followed by getAttribute() 
+PASS option.title: IDL set to -Infinity followed by IDL get 
+PASS option.title: IDL set to &quot;\0&quot; should not throw 
+PASS option.title: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS option.title: IDL set to &quot;\0&quot; followed by IDL get 
+PASS option.title: IDL set to null should not throw 
+PASS option.title: IDL set to null followed by getAttribute() 
+PASS option.title: IDL set to null followed by IDL get 
+PASS option.title: IDL set to object &quot;test-toString&quot; should not throw 
+PASS option.title: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS option.title: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS option.title: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS option.title: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS option.title: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS option.lang: typeof IDL attribute 
+PASS option.lang: IDL get with DOM attribute unset 
+PASS option.lang: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS option.lang: setAttribute() to &quot;&quot; followed by IDL get 
+PASS option.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS option.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS option.lang: setAttribute() to undefined followed by getAttribute() 
+PASS option.lang: setAttribute() to undefined followed by IDL get 
+PASS option.lang: setAttribute() to 7 followed by getAttribute() 
+PASS option.lang: setAttribute() to 7 followed by IDL get 
+PASS option.lang: setAttribute() to 1.5 followed by getAttribute() 
+PASS option.lang: setAttribute() to 1.5 followed by IDL get 
+PASS option.lang: setAttribute() to true followed by getAttribute() 
+PASS option.lang: setAttribute() to true followed by IDL get 
+PASS option.lang: setAttribute() to false followed by getAttribute() 
+PASS option.lang: setAttribute() to false followed by IDL get 
+PASS option.lang: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS option.lang: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS option.lang: setAttribute() to NaN followed by getAttribute() 
+PASS option.lang: setAttribute() to NaN followed by IDL get 
+PASS option.lang: setAttribute() to Infinity followed by getAttribute() 
+PASS option.lang: setAttribute() to Infinity followed by IDL get 
+PASS option.lang: setAttribute() to -Infinity followed by getAttribute() 
+PASS option.lang: setAttribute() to -Infinity followed by IDL get 
+PASS option.lang: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS option.lang: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS option.lang: setAttribute() to null followed by getAttribute() 
+PASS option.lang: setAttribute() to null followed by IDL get 
+PASS option.lang: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS option.lang: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS option.lang: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS option.lang: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS option.lang: IDL set to &quot;&quot; should not throw 
+PASS option.lang: IDL set to &quot;&quot; followed by getAttribute() 
+PASS option.lang: IDL set to &quot;&quot; followed by IDL get 
+PASS option.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS option.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS option.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS option.lang: IDL set to undefined should not throw 
+PASS option.lang: IDL set to undefined followed by getAttribute() 
+PASS option.lang: IDL set to undefined followed by IDL get 
+PASS option.lang: IDL set to 7 should not throw 
+PASS option.lang: IDL set to 7 followed by getAttribute() 
+PASS option.lang: IDL set to 7 followed by IDL get 
+PASS option.lang: IDL set to 1.5 should not throw 
+PASS option.lang: IDL set to 1.5 followed by getAttribute() 
+PASS option.lang: IDL set to 1.5 followed by IDL get 
+PASS option.lang: IDL set to true should not throw 
+PASS option.lang: IDL set to true followed by getAttribute() 
+PASS option.lang: IDL set to true followed by IDL get 
+PASS option.lang: IDL set to false should not throw 
+PASS option.lang: IDL set to false followed by getAttribute() 
+PASS option.lang: IDL set to false followed by IDL get 
+PASS option.lang: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS option.lang: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS option.lang: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS option.lang: IDL set to NaN should not throw 
+PASS option.lang: IDL set to NaN followed by getAttribute() 
+PASS option.lang: IDL set to NaN followed by IDL get 
+PASS option.lang: IDL set to Infinity should not throw 
+PASS option.lang: IDL set to Infinity followed by getAttribute() 
+PASS option.lang: IDL set to Infinity followed by IDL get 
+PASS option.lang: IDL set to -Infinity should not throw 
+PASS option.lang: IDL set to -Infinity followed by getAttribute() 
+PASS option.lang: IDL set to -Infinity followed by IDL get 
+PASS option.lang: IDL set to &quot;\0&quot; should not throw 
+PASS option.lang: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS option.lang: IDL set to &quot;\0&quot; followed by IDL get 
+PASS option.lang: IDL set to null should not throw 
+PASS option.lang: IDL set to null followed by getAttribute() 
+PASS option.lang: IDL set to null followed by IDL get 
+PASS option.lang: IDL set to object &quot;test-toString&quot; should not throw 
+PASS option.lang: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS option.lang: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS option.lang: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS option.lang: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS option.lang: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS option.dir: typeof IDL attribute 
+PASS option.dir: IDL get with DOM attribute unset 
+PASS option.dir: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS option.dir: setAttribute() to &quot;&quot; followed by IDL get 
+PASS option.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS option.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS option.dir: setAttribute() to undefined followed by getAttribute() 
+PASS option.dir: setAttribute() to undefined followed by IDL get 
+PASS option.dir: setAttribute() to 7 followed by getAttribute() 
+PASS option.dir: setAttribute() to 7 followed by IDL get 
+PASS option.dir: setAttribute() to 1.5 followed by getAttribute() 
+PASS option.dir: setAttribute() to 1.5 followed by IDL get 
+PASS option.dir: setAttribute() to true followed by getAttribute() 
+PASS option.dir: setAttribute() to true followed by IDL get 
+PASS option.dir: setAttribute() to false followed by getAttribute() 
+PASS option.dir: setAttribute() to false followed by IDL get 
+PASS option.dir: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS option.dir: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS option.dir: setAttribute() to NaN followed by getAttribute() 
+PASS option.dir: setAttribute() to NaN followed by IDL get 
+PASS option.dir: setAttribute() to Infinity followed by getAttribute() 
+PASS option.dir: setAttribute() to Infinity followed by IDL get 
+PASS option.dir: setAttribute() to -Infinity followed by getAttribute() 
+PASS option.dir: setAttribute() to -Infinity followed by IDL get 
+PASS option.dir: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS option.dir: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS option.dir: setAttribute() to null followed by getAttribute() 
+PASS option.dir: setAttribute() to null followed by IDL get 
+PASS option.dir: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS option.dir: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS option.dir: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS option.dir: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS option.dir: setAttribute() to &quot;ltr&quot; followed by getAttribute() 
+PASS option.dir: setAttribute() to &quot;ltr&quot; followed by IDL get 
+PASS option.dir: setAttribute() to &quot;xltr&quot; followed by getAttribute() 
+PASS option.dir: setAttribute() to &quot;xltr&quot; followed by IDL get 
+PASS option.dir: setAttribute() to &quot;ltr\0&quot; followed by getAttribute() 
+PASS option.dir: setAttribute() to &quot;ltr\0&quot; followed by IDL get 
+PASS option.dir: setAttribute() to &quot;tr&quot; followed by getAttribute() 
+PASS option.dir: setAttribute() to &quot;tr&quot; followed by IDL get 
+PASS option.dir: setAttribute() to &quot;LTR&quot; followed by getAttribute() 
+PASS option.dir: setAttribute() to &quot;LTR&quot; followed by IDL get 
+PASS option.dir: setAttribute() to &quot;rtl&quot; followed by getAttribute() 
+PASS option.dir: setAttribute() to &quot;rtl&quot; followed by IDL get 
+PASS option.dir: setAttribute() to &quot;xrtl&quot; followed by getAttribute() 
+PASS option.dir: setAttribute() to &quot;xrtl&quot; followed by IDL get 
+PASS option.dir: setAttribute() to &quot;rtl\0&quot; followed by getAttribute() 
+PASS option.dir: setAttribute() to &quot;rtl\0&quot; followed by IDL get 
+PASS option.dir: setAttribute() to &quot;tl&quot; followed by getAttribute() 
+PASS option.dir: setAttribute() to &quot;tl&quot; followed by IDL get 
+PASS option.dir: setAttribute() to &quot;RTL&quot; followed by getAttribute() 
+PASS option.dir: setAttribute() to &quot;RTL&quot; followed by IDL get 
+PASS option.dir: setAttribute() to &quot;auto&quot; followed by getAttribute() 
+PASS option.dir: setAttribute() to &quot;auto&quot; followed by IDL get 
+PASS option.dir: setAttribute() to &quot;xauto&quot; followed by getAttribute() 
+PASS option.dir: setAttribute() to &quot;xauto&quot; followed by IDL get 
+PASS option.dir: setAttribute() to &quot;auto\0&quot; followed by getAttribute() 
+PASS option.dir: setAttribute() to &quot;auto\0&quot; followed by IDL get 
+PASS option.dir: setAttribute() to &quot;uto&quot; followed by getAttribute() 
+PASS option.dir: setAttribute() to &quot;uto&quot; followed by IDL get 
+PASS option.dir: setAttribute() to &quot;AUTO&quot; followed by getAttribute() 
+PASS option.dir: setAttribute() to &quot;AUTO&quot; followed by IDL get 
+PASS option.dir: IDL set to &quot;&quot; should not throw 
+PASS option.dir: IDL set to &quot;&quot; followed by getAttribute() 
+PASS option.dir: IDL set to &quot;&quot; followed by IDL get 
+PASS option.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS option.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS option.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS option.dir: IDL set to undefined should not throw 
+PASS option.dir: IDL set to undefined followed by getAttribute() 
+PASS option.dir: IDL set to undefined followed by IDL get 
+PASS option.dir: IDL set to 7 should not throw 
+PASS option.dir: IDL set to 7 followed by getAttribute() 
+PASS option.dir: IDL set to 7 followed by IDL get 
+PASS option.dir: IDL set to 1.5 should not throw 
+PASS option.dir: IDL set to 1.5 followed by getAttribute() 
+PASS option.dir: IDL set to 1.5 followed by IDL get 
+PASS option.dir: IDL set to true should not throw 
+PASS option.dir: IDL set to true followed by getAttribute() 
+PASS option.dir: IDL set to true followed by IDL get 
+PASS option.dir: IDL set to false should not throw 
+PASS option.dir: IDL set to false followed by getAttribute() 
+PASS option.dir: IDL set to false followed by IDL get 
+PASS option.dir: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS option.dir: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS option.dir: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS option.dir: IDL set to NaN should not throw 
+PASS option.dir: IDL set to NaN followed by getAttribute() 
+PASS option.dir: IDL set to NaN followed by IDL get 
+PASS option.dir: IDL set to Infinity should not throw 
+PASS option.dir: IDL set to Infinity followed by getAttribute() 
+PASS option.dir: IDL set to Infinity followed by IDL get 
+PASS option.dir: IDL set to -Infinity should not throw 
+PASS option.dir: IDL set to -Infinity followed by getAttribute() 
+PASS option.dir: IDL set to -Infinity followed by IDL get 
+PASS option.dir: IDL set to &quot;\0&quot; should not throw 
+PASS option.dir: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS option.dir: IDL set to &quot;\0&quot; followed by IDL get 
+PASS option.dir: IDL set to null should not throw 
+PASS option.dir: IDL set to null followed by IDL get 
+PASS option.dir: IDL set to object &quot;test-toString&quot; should not throw 
+PASS option.dir: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS option.dir: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS option.dir: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS option.dir: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS option.dir: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS option.dir: IDL set to &quot;ltr&quot; should not throw 
+PASS option.dir: IDL set to &quot;ltr&quot; followed by getAttribute() 
+PASS option.dir: IDL set to &quot;ltr&quot; followed by IDL get 
+PASS option.dir: IDL set to &quot;xltr&quot; should not throw 
+PASS option.dir: IDL set to &quot;xltr&quot; followed by getAttribute() 
+PASS option.dir: IDL set to &quot;xltr&quot; followed by IDL get 
+PASS option.dir: IDL set to &quot;ltr\0&quot; should not throw 
+PASS option.dir: IDL set to &quot;ltr\0&quot; followed by getAttribute() 
+PASS option.dir: IDL set to &quot;ltr\0&quot; followed by IDL get 
+PASS option.dir: IDL set to &quot;tr&quot; should not throw 
+PASS option.dir: IDL set to &quot;tr&quot; followed by getAttribute() 
+PASS option.dir: IDL set to &quot;tr&quot; followed by IDL get 
+PASS option.dir: IDL set to &quot;LTR&quot; should not throw 
+PASS option.dir: IDL set to &quot;LTR&quot; followed by getAttribute() 
+PASS option.dir: IDL set to &quot;LTR&quot; followed by IDL get 
+PASS option.dir: IDL set to &quot;rtl&quot; should not throw 
+PASS option.dir: IDL set to &quot;rtl&quot; followed by getAttribute() 
+PASS option.dir: IDL set to &quot;rtl&quot; followed by IDL get 
+PASS option.dir: IDL set to &quot;xrtl&quot; should not throw 
+PASS option.dir: IDL set to &quot;xrtl&quot; followed by getAttribute() 
+PASS option.dir: IDL set to &quot;xrtl&quot; followed by IDL get 
+PASS option.dir: IDL set to &quot;rtl\0&quot; should not throw 
+PASS option.dir: IDL set to &quot;rtl\0&quot; followed by getAttribute() 
+PASS option.dir: IDL set to &quot;rtl\0&quot; followed by IDL get 
+PASS option.dir: IDL set to &quot;tl&quot; should not throw 
+PASS option.dir: IDL set to &quot;tl&quot; followed by getAttribute() 
+PASS option.dir: IDL set to &quot;tl&quot; followed by IDL get 
+PASS option.dir: IDL set to &quot;RTL&quot; should not throw 
+PASS option.dir: IDL set to &quot;RTL&quot; followed by getAttribute() 
+PASS option.dir: IDL set to &quot;RTL&quot; followed by IDL get 
+PASS option.dir: IDL set to &quot;auto&quot; should not throw 
+PASS option.dir: IDL set to &quot;auto&quot; followed by getAttribute() 
+PASS option.dir: IDL set to &quot;auto&quot; followed by IDL get 
+PASS option.dir: IDL set to &quot;xauto&quot; should not throw 
+PASS option.dir: IDL set to &quot;xauto&quot; followed by getAttribute() 
+PASS option.dir: IDL set to &quot;xauto&quot; followed by IDL get 
+PASS option.dir: IDL set to &quot;auto\0&quot; should not throw 
+PASS option.dir: IDL set to &quot;auto\0&quot; followed by getAttribute() 
+PASS option.dir: IDL set to &quot;auto\0&quot; followed by IDL get 
+PASS option.dir: IDL set to &quot;uto&quot; should not throw 
+PASS option.dir: IDL set to &quot;uto&quot; followed by getAttribute() 
+PASS option.dir: IDL set to &quot;uto&quot; followed by IDL get 
+PASS option.dir: IDL set to &quot;AUTO&quot; should not throw 
+PASS option.dir: IDL set to &quot;AUTO&quot; followed by getAttribute() 
+PASS option.dir: IDL set to &quot;AUTO&quot; followed by IDL get 
+PASS option.className (&lt;option class&gt;): typeof IDL attribute 
+PASS option.className (&lt;option class&gt;): IDL get with DOM attribute unset 
+PASS option.className (&lt;option class&gt;): setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): setAttribute() to &quot;&quot; followed by IDL get 
+PASS option.className (&lt;option class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS option.className (&lt;option class&gt;): setAttribute() to undefined followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): setAttribute() to undefined followed by IDL get 
+PASS option.className (&lt;option class&gt;): setAttribute() to 7 followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): setAttribute() to 7 followed by IDL get 
+PASS option.className (&lt;option class&gt;): setAttribute() to 1.5 followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): setAttribute() to 1.5 followed by IDL get 
+PASS option.className (&lt;option class&gt;): setAttribute() to true followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): setAttribute() to true followed by IDL get 
+PASS option.className (&lt;option class&gt;): setAttribute() to false followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): setAttribute() to false followed by IDL get 
+PASS option.className (&lt;option class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS option.className (&lt;option class&gt;): setAttribute() to NaN followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): setAttribute() to NaN followed by IDL get 
+PASS option.className (&lt;option class&gt;): setAttribute() to Infinity followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): setAttribute() to Infinity followed by IDL get 
+PASS option.className (&lt;option class&gt;): setAttribute() to -Infinity followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): setAttribute() to -Infinity followed by IDL get 
+PASS option.className (&lt;option class&gt;): setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS option.className (&lt;option class&gt;): setAttribute() to null followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): setAttribute() to null followed by IDL get 
+PASS option.className (&lt;option class&gt;): setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS option.className (&lt;option class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS option.className (&lt;option class&gt;): IDL set to &quot;&quot; should not throw 
+PASS option.className (&lt;option class&gt;): IDL set to &quot;&quot; followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): IDL set to &quot;&quot; followed by IDL get 
+PASS option.className (&lt;option class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS option.className (&lt;option class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS option.className (&lt;option class&gt;): IDL set to undefined should not throw 
+PASS option.className (&lt;option class&gt;): IDL set to undefined followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): IDL set to undefined followed by IDL get 
+PASS option.className (&lt;option class&gt;): IDL set to 7 should not throw 
+PASS option.className (&lt;option class&gt;): IDL set to 7 followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): IDL set to 7 followed by IDL get 
+PASS option.className (&lt;option class&gt;): IDL set to 1.5 should not throw 
+PASS option.className (&lt;option class&gt;): IDL set to 1.5 followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): IDL set to 1.5 followed by IDL get 
+PASS option.className (&lt;option class&gt;): IDL set to true should not throw 
+PASS option.className (&lt;option class&gt;): IDL set to true followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): IDL set to true followed by IDL get 
+PASS option.className (&lt;option class&gt;): IDL set to false should not throw 
+PASS option.className (&lt;option class&gt;): IDL set to false followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): IDL set to false followed by IDL get 
+PASS option.className (&lt;option class&gt;): IDL set to object &quot;[object Object]&quot; should not throw 
+PASS option.className (&lt;option class&gt;): IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS option.className (&lt;option class&gt;): IDL set to NaN should not throw 
+PASS option.className (&lt;option class&gt;): IDL set to NaN followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): IDL set to NaN followed by IDL get 
+PASS option.className (&lt;option class&gt;): IDL set to Infinity should not throw 
+PASS option.className (&lt;option class&gt;): IDL set to Infinity followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): IDL set to Infinity followed by IDL get 
+PASS option.className (&lt;option class&gt;): IDL set to -Infinity should not throw 
+PASS option.className (&lt;option class&gt;): IDL set to -Infinity followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): IDL set to -Infinity followed by IDL get 
+PASS option.className (&lt;option class&gt;): IDL set to &quot;\0&quot; should not throw 
+PASS option.className (&lt;option class&gt;): IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): IDL set to &quot;\0&quot; followed by IDL get 
+PASS option.className (&lt;option class&gt;): IDL set to null should not throw 
+PASS option.className (&lt;option class&gt;): IDL set to null followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): IDL set to null followed by IDL get 
+PASS option.className (&lt;option class&gt;): IDL set to object &quot;test-toString&quot; should not throw 
+PASS option.className (&lt;option class&gt;): IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS option.className (&lt;option class&gt;): IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS option.className (&lt;option class&gt;): IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS option.className (&lt;option class&gt;): IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS option.hidden: typeof IDL attribute 
+PASS option.hidden: IDL get with DOM attribute unset 
+PASS option.hidden: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS option.hidden: setAttribute() to &quot;&quot; followed by IDL get 
+PASS option.hidden: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS option.hidden: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS option.hidden: setAttribute() to undefined followed by getAttribute() 
+PASS option.hidden: setAttribute() to undefined followed by IDL get 
+PASS option.hidden: setAttribute() to null followed by getAttribute() 
+PASS option.hidden: setAttribute() to null followed by IDL get 
+PASS option.hidden: setAttribute() to 7 followed by getAttribute() 
+PASS option.hidden: setAttribute() to 7 followed by IDL get 
+PASS option.hidden: setAttribute() to 1.5 followed by getAttribute() 
+PASS option.hidden: setAttribute() to 1.5 followed by IDL get 
+PASS option.hidden: setAttribute() to true followed by getAttribute() 
+PASS option.hidden: setAttribute() to true followed by IDL get 
+PASS option.hidden: setAttribute() to false followed by getAttribute() 
+PASS option.hidden: setAttribute() to false followed by IDL get 
+PASS option.hidden: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS option.hidden: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS option.hidden: setAttribute() to NaN followed by getAttribute() 
+PASS option.hidden: setAttribute() to NaN followed by IDL get 
+PASS option.hidden: setAttribute() to Infinity followed by getAttribute() 
+PASS option.hidden: setAttribute() to Infinity followed by IDL get 
+PASS option.hidden: setAttribute() to -Infinity followed by getAttribute() 
+PASS option.hidden: setAttribute() to -Infinity followed by IDL get 
+PASS option.hidden: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS option.hidden: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS option.hidden: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS option.hidden: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS option.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS option.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS option.hidden: setAttribute() to &quot;hidden&quot; followed by getAttribute() 
+PASS option.hidden: setAttribute() to &quot;hidden&quot; followed by IDL get 
+PASS option.hidden: IDL set to &quot;&quot; should not throw 
+PASS option.hidden: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS option.hidden: IDL set to &quot;&quot; followed by IDL get 
+PASS option.hidden: IDL set to &quot; foo &quot; should not throw 
+PASS option.hidden: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS option.hidden: IDL set to &quot; foo &quot; followed by IDL get 
+PASS option.hidden: IDL set to undefined should not throw 
+PASS option.hidden: IDL set to undefined followed by hasAttribute() 
+PASS option.hidden: IDL set to undefined followed by IDL get 
+PASS option.hidden: IDL set to null should not throw 
+PASS option.hidden: IDL set to null followed by hasAttribute() 
+PASS option.hidden: IDL set to null followed by IDL get 
+PASS option.hidden: IDL set to 7 should not throw 
+PASS option.hidden: IDL set to 7 followed by hasAttribute() 
+PASS option.hidden: IDL set to 7 followed by IDL get 
+PASS option.hidden: IDL set to 1.5 should not throw 
+PASS option.hidden: IDL set to 1.5 followed by hasAttribute() 
+PASS option.hidden: IDL set to 1.5 followed by IDL get 
+PASS option.hidden: IDL set to true should not throw 
+PASS option.hidden: IDL set to true followed by hasAttribute() 
+PASS option.hidden: IDL set to true followed by IDL get 
+PASS option.hidden: IDL set to false should not throw 
+PASS option.hidden: IDL set to false followed by hasAttribute() 
+PASS option.hidden: IDL set to false followed by IDL get 
+PASS option.hidden: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS option.hidden: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS option.hidden: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS option.hidden: IDL set to NaN should not throw 
+PASS option.hidden: IDL set to NaN followed by hasAttribute() 
+PASS option.hidden: IDL set to NaN followed by IDL get 
+PASS option.hidden: IDL set to Infinity should not throw 
+PASS option.hidden: IDL set to Infinity followed by hasAttribute() 
+PASS option.hidden: IDL set to Infinity followed by IDL get 
+PASS option.hidden: IDL set to -Infinity should not throw 
+PASS option.hidden: IDL set to -Infinity followed by hasAttribute() 
+PASS option.hidden: IDL set to -Infinity followed by IDL get 
+PASS option.hidden: IDL set to &quot;\0&quot; should not throw 
+PASS option.hidden: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS option.hidden: IDL set to &quot;\0&quot; followed by IDL get 
+PASS option.hidden: IDL set to object &quot;test-toString&quot; should not throw 
+PASS option.hidden: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS option.hidden: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS option.hidden: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS option.hidden: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS option.hidden: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS option.accessKey: typeof IDL attribute 
+PASS option.accessKey: IDL get with DOM attribute unset 
+PASS option.accessKey: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS option.accessKey: setAttribute() to &quot;&quot; followed by IDL get 
+PASS option.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS option.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS option.accessKey: setAttribute() to undefined followed by getAttribute() 
+PASS option.accessKey: setAttribute() to undefined followed by IDL get 
+PASS option.accessKey: setAttribute() to 7 followed by getAttribute() 
+PASS option.accessKey: setAttribute() to 7 followed by IDL get 
+PASS option.accessKey: setAttribute() to 1.5 followed by getAttribute() 
+PASS option.accessKey: setAttribute() to 1.5 followed by IDL get 
+PASS option.accessKey: setAttribute() to true followed by getAttribute() 
+PASS option.accessKey: setAttribute() to true followed by IDL get 
+PASS option.accessKey: setAttribute() to false followed by getAttribute() 
+PASS option.accessKey: setAttribute() to false followed by IDL get 
+PASS option.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS option.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS option.accessKey: setAttribute() to NaN followed by getAttribute() 
+PASS option.accessKey: setAttribute() to NaN followed by IDL get 
+PASS option.accessKey: setAttribute() to Infinity followed by getAttribute() 
+PASS option.accessKey: setAttribute() to Infinity followed by IDL get 
+PASS option.accessKey: setAttribute() to -Infinity followed by getAttribute() 
+PASS option.accessKey: setAttribute() to -Infinity followed by IDL get 
+PASS option.accessKey: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS option.accessKey: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS option.accessKey: setAttribute() to null followed by getAttribute() 
+PASS option.accessKey: setAttribute() to null followed by IDL get 
+PASS option.accessKey: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS option.accessKey: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS option.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS option.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS option.accessKey: IDL set to &quot;&quot; should not throw 
+PASS option.accessKey: IDL set to &quot;&quot; followed by getAttribute() 
+PASS option.accessKey: IDL set to &quot;&quot; followed by IDL get 
+PASS option.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS option.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS option.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS option.accessKey: IDL set to undefined should not throw 
+PASS option.accessKey: IDL set to undefined followed by getAttribute() 
+PASS option.accessKey: IDL set to undefined followed by IDL get 
+PASS option.accessKey: IDL set to 7 should not throw 
+PASS option.accessKey: IDL set to 7 followed by getAttribute() 
+PASS option.accessKey: IDL set to 7 followed by IDL get 
+PASS option.accessKey: IDL set to 1.5 should not throw 
+PASS option.accessKey: IDL set to 1.5 followed by getAttribute() 
+PASS option.accessKey: IDL set to 1.5 followed by IDL get 
+PASS option.accessKey: IDL set to true should not throw 
+PASS option.accessKey: IDL set to true followed by getAttribute() 
+PASS option.accessKey: IDL set to true followed by IDL get 
+PASS option.accessKey: IDL set to false should not throw 
+PASS option.accessKey: IDL set to false followed by getAttribute() 
+PASS option.accessKey: IDL set to false followed by IDL get 
+PASS option.accessKey: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS option.accessKey: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS option.accessKey: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS option.accessKey: IDL set to NaN should not throw 
+PASS option.accessKey: IDL set to NaN followed by getAttribute() 
+PASS option.accessKey: IDL set to NaN followed by IDL get 
+PASS option.accessKey: IDL set to Infinity should not throw 
+PASS option.accessKey: IDL set to Infinity followed by getAttribute() 
+PASS option.accessKey: IDL set to Infinity followed by IDL get 
+PASS option.accessKey: IDL set to -Infinity should not throw 
+PASS option.accessKey: IDL set to -Infinity followed by getAttribute() 
+PASS option.accessKey: IDL set to -Infinity followed by IDL get 
+PASS option.accessKey: IDL set to &quot;\0&quot; should not throw 
+PASS option.accessKey: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS option.accessKey: IDL set to &quot;\0&quot; followed by IDL get 
+PASS option.accessKey: IDL set to null should not throw 
+PASS option.accessKey: IDL set to null followed by getAttribute() 
+PASS option.accessKey: IDL set to null followed by IDL get 
+PASS option.accessKey: IDL set to object &quot;test-toString&quot; should not throw 
+PASS option.accessKey: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS option.accessKey: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS option.accessKey: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS option.accessKey: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS option.accessKey: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS option.tabIndex: typeof IDL attribute 
+PASS option.tabIndex: setAttribute() to -36 followed by getAttribute() 
+PASS option.tabIndex: setAttribute() to -36 followed by IDL get 
+PASS option.tabIndex: setAttribute() to -1 followed by getAttribute() 
+PASS option.tabIndex: setAttribute() to -1 followed by IDL get 
+PASS option.tabIndex: setAttribute() to 0 followed by getAttribute() 
+PASS option.tabIndex: setAttribute() to 0 followed by IDL get 
+PASS option.tabIndex: setAttribute() to 1 followed by getAttribute() 
+PASS option.tabIndex: setAttribute() to 1 followed by IDL get 
+PASS option.tabIndex: setAttribute() to 2147483647 followed by getAttribute() 
+PASS option.tabIndex: setAttribute() to 2147483647 followed by IDL get 
+PASS option.tabIndex: setAttribute() to -2147483648 followed by getAttribute() 
+PASS option.tabIndex: setAttribute() to -2147483648 followed by IDL get 
+PASS option.tabIndex: setAttribute() to &quot;-1&quot; followed by getAttribute() 
+PASS option.tabIndex: setAttribute() to &quot;-1&quot; followed by IDL get 
+PASS option.tabIndex: setAttribute() to &quot;-0&quot; followed by getAttribute() 
+PASS option.tabIndex: setAttribute() to &quot;-0&quot; followed by IDL get 
+PASS option.tabIndex: setAttribute() to &quot;0&quot; followed by getAttribute() 
+PASS option.tabIndex: setAttribute() to &quot;0&quot; followed by IDL get 
+PASS option.tabIndex: setAttribute() to &quot;1&quot; followed by getAttribute() 
+PASS option.tabIndex: setAttribute() to &quot;1&quot; followed by IDL get 
+PASS option.tabIndex: setAttribute() to &quot;\t7&quot; followed by getAttribute() 
+PASS option.tabIndex: setAttribute() to &quot;\t7&quot; followed by IDL get 
+PASS option.tabIndex: setAttribute() to &quot;\f7&quot; followed by getAttribute() 
+PASS option.tabIndex: setAttribute() to &quot;\f7&quot; followed by IDL get 
+PASS option.tabIndex: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS option.tabIndex: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS option.tabIndex: setAttribute() to &quot;\n7&quot; followed by getAttribute() 
+PASS option.tabIndex: setAttribute() to &quot;\n7&quot; followed by IDL get 
+PASS option.tabIndex: setAttribute() to &quot;\r7&quot; followed by getAttribute() 
+PASS option.tabIndex: setAttribute() to &quot;\r7&quot; followed by IDL get 
+PASS option.tabIndex: setAttribute() to 1.5 followed by getAttribute() 
+PASS option.tabIndex: setAttribute() to 1.5 followed by IDL get 
+PASS option.tabIndex: setAttribute() to object &quot;2&quot; followed by getAttribute() 
+PASS option.tabIndex: setAttribute() to object &quot;2&quot; followed by IDL get 
+PASS option.tabIndex: IDL set to -36 should not throw 
+PASS option.tabIndex: IDL set to -36 followed by getAttribute() 
+PASS option.tabIndex: IDL set to -36 followed by IDL get 
+PASS option.tabIndex: IDL set to -1 should not throw 
+PASS option.tabIndex: IDL set to -1 followed by getAttribute() 
+PASS option.tabIndex: IDL set to -1 followed by IDL get 
+PASS option.tabIndex: IDL set to 0 should not throw 
+PASS option.tabIndex: IDL set to 0 followed by getAttribute() 
+PASS option.tabIndex: IDL set to 0 followed by IDL get 
+PASS option.tabIndex: IDL set to 1 should not throw 
+PASS option.tabIndex: IDL set to 1 followed by getAttribute() 
+PASS option.tabIndex: IDL set to 1 followed by IDL get 
+PASS option.tabIndex: IDL set to 2147483647 should not throw 
+PASS option.tabIndex: IDL set to 2147483647 followed by getAttribute() 
+PASS option.tabIndex: IDL set to 2147483647 followed by IDL get 
+PASS option.tabIndex: IDL set to -2147483648 should not throw 
+PASS option.tabIndex: IDL set to -2147483648 followed by getAttribute() 
+PASS option.tabIndex: IDL set to -2147483648 followed by IDL get 
+PASS option.disabled: typeof IDL attribute 
+PASS option.disabled: IDL get with DOM attribute unset 
+PASS option.disabled: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS option.disabled: setAttribute() to &quot;&quot; followed by IDL get 
+PASS option.disabled: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS option.disabled: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS option.disabled: setAttribute() to undefined followed by getAttribute() 
+PASS option.disabled: setAttribute() to undefined followed by IDL get 
+PASS option.disabled: setAttribute() to null followed by getAttribute() 
+PASS option.disabled: setAttribute() to null followed by IDL get 
+PASS option.disabled: setAttribute() to 7 followed by getAttribute() 
+PASS option.disabled: setAttribute() to 7 followed by IDL get 
+PASS option.disabled: setAttribute() to 1.5 followed by getAttribute() 
+PASS option.disabled: setAttribute() to 1.5 followed by IDL get 
+PASS option.disabled: setAttribute() to true followed by getAttribute() 
+PASS option.disabled: setAttribute() to true followed by IDL get 
+PASS option.disabled: setAttribute() to false followed by getAttribute() 
+PASS option.disabled: setAttribute() to false followed by IDL get 
+PASS option.disabled: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS option.disabled: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS option.disabled: setAttribute() to NaN followed by getAttribute() 
+PASS option.disabled: setAttribute() to NaN followed by IDL get 
+PASS option.disabled: setAttribute() to Infinity followed by getAttribute() 
+PASS option.disabled: setAttribute() to Infinity followed by IDL get 
+PASS option.disabled: setAttribute() to -Infinity followed by getAttribute() 
+PASS option.disabled: setAttribute() to -Infinity followed by IDL get 
+PASS option.disabled: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS option.disabled: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS option.disabled: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS option.disabled: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS option.disabled: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS option.disabled: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS option.disabled: setAttribute() to &quot;disabled&quot; followed by getAttribute() 
+PASS option.disabled: setAttribute() to &quot;disabled&quot; followed by IDL get 
+PASS option.disabled: IDL set to &quot;&quot; should not throw 
+PASS option.disabled: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS option.disabled: IDL set to &quot;&quot; followed by IDL get 
+PASS option.disabled: IDL set to &quot; foo &quot; should not throw 
+PASS option.disabled: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS option.disabled: IDL set to &quot; foo &quot; followed by IDL get 
+PASS option.disabled: IDL set to undefined should not throw 
+PASS option.disabled: IDL set to undefined followed by hasAttribute() 
+PASS option.disabled: IDL set to undefined followed by IDL get 
+PASS option.disabled: IDL set to null should not throw 
+PASS option.disabled: IDL set to null followed by hasAttribute() 
+PASS option.disabled: IDL set to null followed by IDL get 
+PASS option.disabled: IDL set to 7 should not throw 
+PASS option.disabled: IDL set to 7 followed by hasAttribute() 
+PASS option.disabled: IDL set to 7 followed by IDL get 
+PASS option.disabled: IDL set to 1.5 should not throw 
+PASS option.disabled: IDL set to 1.5 followed by hasAttribute() 
+PASS option.disabled: IDL set to 1.5 followed by IDL get 
+PASS option.disabled: IDL set to true should not throw 
+PASS option.disabled: IDL set to true followed by hasAttribute() 
+PASS option.disabled: IDL set to true followed by IDL get 
+PASS option.disabled: IDL set to false should not throw 
+PASS option.disabled: IDL set to false followed by hasAttribute() 
+PASS option.disabled: IDL set to false followed by IDL get 
+PASS option.disabled: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS option.disabled: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS option.disabled: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS option.disabled: IDL set to NaN should not throw 
+PASS option.disabled: IDL set to NaN followed by hasAttribute() 
+PASS option.disabled: IDL set to NaN followed by IDL get 
+PASS option.disabled: IDL set to Infinity should not throw 
+PASS option.disabled: IDL set to Infinity followed by hasAttribute() 
+PASS option.disabled: IDL set to Infinity followed by IDL get 
+PASS option.disabled: IDL set to -Infinity should not throw 
+PASS option.disabled: IDL set to -Infinity followed by hasAttribute() 
+PASS option.disabled: IDL set to -Infinity followed by IDL get 
+PASS option.disabled: IDL set to &quot;\0&quot; should not throw 
+PASS option.disabled: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS option.disabled: IDL set to &quot;\0&quot; followed by IDL get 
+PASS option.disabled: IDL set to object &quot;test-toString&quot; should not throw 
+PASS option.disabled: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS option.disabled: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS option.disabled: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS option.disabled: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS option.disabled: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS option.label: typeof IDL attribute 
+PASS option.label: IDL get with DOM attribute unset 
+PASS option.label: IDL set to &quot;&quot; should not throw 
+PASS option.label: IDL set to &quot;&quot; followed by getAttribute() 
+PASS option.label: IDL set to &quot;&quot; followed by IDL get 
+PASS option.label: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS option.label: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+FAIL option.label: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get assert_equals: expected &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; but got &quot;\0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo&quot;
+PASS option.label: IDL set to undefined should not throw 
+PASS option.label: IDL set to undefined followed by getAttribute() 
+PASS option.label: IDL set to undefined followed by IDL get 
+PASS option.label: IDL set to 7 should not throw 
+PASS option.label: IDL set to 7 followed by getAttribute() 
+PASS option.label: IDL set to 7 followed by IDL get 
+PASS option.label: IDL set to 1.5 should not throw 
+PASS option.label: IDL set to 1.5 followed by getAttribute() 
+PASS option.label: IDL set to 1.5 followed by IDL get 
+PASS option.label: IDL set to true should not throw 
+PASS option.label: IDL set to true followed by getAttribute() 
+PASS option.label: IDL set to true followed by IDL get 
+PASS option.label: IDL set to false should not throw 
+PASS option.label: IDL set to false followed by getAttribute() 
+PASS option.label: IDL set to false followed by IDL get 
+PASS option.label: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS option.label: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS option.label: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS option.label: IDL set to NaN should not throw 
+PASS option.label: IDL set to NaN followed by getAttribute() 
+PASS option.label: IDL set to NaN followed by IDL get 
+PASS option.label: IDL set to Infinity should not throw 
+PASS option.label: IDL set to Infinity followed by getAttribute() 
+PASS option.label: IDL set to Infinity followed by IDL get 
+PASS option.label: IDL set to -Infinity should not throw 
+PASS option.label: IDL set to -Infinity followed by getAttribute() 
+PASS option.label: IDL set to -Infinity followed by IDL get 
+PASS option.label: IDL set to &quot;\0&quot; should not throw 
+PASS option.label: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS option.label: IDL set to &quot;\0&quot; followed by IDL get 
+PASS option.label: IDL set to null should not throw 
+PASS option.label: IDL set to null followed by getAttribute() 
+PASS option.label: IDL set to null followed by IDL get 
+PASS option.label: IDL set to object &quot;test-toString&quot; should not throw 
+PASS option.label: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS option.label: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS option.label: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS option.label: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS option.label: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): typeof IDL attribute 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL get with DOM attribute unset 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to &quot;&quot; followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to undefined followed by getAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to undefined followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to null followed by getAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to null followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to 7 followed by getAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to 7 followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to 1.5 followed by getAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to 1.5 followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to true followed by getAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to true followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to false followed by getAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to false followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to NaN followed by getAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to NaN followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to Infinity followed by getAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to Infinity followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to -Infinity followed by getAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to -Infinity followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to &quot;selected&quot; followed by getAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): setAttribute() to &quot;selected&quot; followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to &quot;&quot; should not throw 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to &quot;&quot; followed by hasAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to &quot;&quot; followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to &quot; foo &quot; should not throw 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to &quot; foo &quot; followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to undefined should not throw 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to undefined followed by hasAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to undefined followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to null should not throw 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to null followed by hasAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to null followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to 7 should not throw 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to 7 followed by hasAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to 7 followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to 1.5 should not throw 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to 1.5 followed by hasAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to 1.5 followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to true should not throw 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to true followed by hasAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to true followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to false should not throw 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to false followed by hasAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to false followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to object &quot;[object Object]&quot; should not throw 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to NaN should not throw 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to NaN followed by hasAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to NaN followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to Infinity should not throw 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to Infinity followed by hasAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to Infinity followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to -Infinity should not throw 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to -Infinity followed by hasAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to -Infinity followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to &quot;\0&quot; should not throw 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to &quot;\0&quot; followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to object &quot;test-toString&quot; should not throw 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS option.defaultSelected (&lt;option selected&gt;): IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS option.value: typeof IDL attribute 
+PASS option.value: IDL get with DOM attribute unset 
+PASS option.value: IDL set to &quot;&quot; should not throw 
+PASS option.value: IDL set to &quot;&quot; followed by getAttribute() 
+PASS option.value: IDL set to &quot;&quot; followed by IDL get 
+PASS option.value: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS option.value: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS option.value: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS option.value: IDL set to undefined should not throw 
+PASS option.value: IDL set to undefined followed by getAttribute() 
+PASS option.value: IDL set to undefined followed by IDL get 
+PASS option.value: IDL set to 7 should not throw 
+PASS option.value: IDL set to 7 followed by getAttribute() 
+PASS option.value: IDL set to 7 followed by IDL get 
+PASS option.value: IDL set to 1.5 should not throw 
+PASS option.value: IDL set to 1.5 followed by getAttribute() 
+PASS option.value: IDL set to 1.5 followed by IDL get 
+PASS option.value: IDL set to true should not throw 
+PASS option.value: IDL set to true followed by getAttribute() 
+PASS option.value: IDL set to true followed by IDL get 
+PASS option.value: IDL set to false should not throw 
+PASS option.value: IDL set to false followed by getAttribute() 
+PASS option.value: IDL set to false followed by IDL get 
+PASS option.value: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS option.value: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS option.value: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS option.value: IDL set to NaN should not throw 
+PASS option.value: IDL set to NaN followed by getAttribute() 
+PASS option.value: IDL set to NaN followed by IDL get 
+PASS option.value: IDL set to Infinity should not throw 
+PASS option.value: IDL set to Infinity followed by getAttribute() 
+PASS option.value: IDL set to Infinity followed by IDL get 
+PASS option.value: IDL set to -Infinity should not throw 
+PASS option.value: IDL set to -Infinity followed by getAttribute() 
+PASS option.value: IDL set to -Infinity followed by IDL get 
+PASS option.value: IDL set to &quot;\0&quot; should not throw 
+PASS option.value: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS option.value: IDL set to &quot;\0&quot; followed by IDL get 
+PASS option.value: IDL set to null should not throw 
+PASS option.value: IDL set to null followed by getAttribute() 
+PASS option.value: IDL set to null followed by IDL get 
+PASS option.value: IDL set to object &quot;test-toString&quot; should not throw 
+PASS option.value: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS option.value: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS option.value: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS option.value: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS option.value: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS textarea.title: typeof IDL attribute 
+PASS textarea.title: IDL get with DOM attribute unset 
+PASS textarea.title: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS textarea.title: setAttribute() to &quot;&quot; followed by IDL get 
+PASS textarea.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS textarea.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS textarea.title: setAttribute() to undefined followed by getAttribute() 
+PASS textarea.title: setAttribute() to undefined followed by IDL get 
+PASS textarea.title: setAttribute() to 7 followed by getAttribute() 
+PASS textarea.title: setAttribute() to 7 followed by IDL get 
+PASS textarea.title: setAttribute() to 1.5 followed by getAttribute() 
+PASS textarea.title: setAttribute() to 1.5 followed by IDL get 
+PASS textarea.title: setAttribute() to true followed by getAttribute() 
+PASS textarea.title: setAttribute() to true followed by IDL get 
+PASS textarea.title: setAttribute() to false followed by getAttribute() 
+PASS textarea.title: setAttribute() to false followed by IDL get 
+PASS textarea.title: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS textarea.title: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.title: setAttribute() to NaN followed by getAttribute() 
+PASS textarea.title: setAttribute() to NaN followed by IDL get 
+PASS textarea.title: setAttribute() to Infinity followed by getAttribute() 
+PASS textarea.title: setAttribute() to Infinity followed by IDL get 
+PASS textarea.title: setAttribute() to -Infinity followed by getAttribute() 
+PASS textarea.title: setAttribute() to -Infinity followed by IDL get 
+PASS textarea.title: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS textarea.title: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS textarea.title: setAttribute() to null followed by getAttribute() 
+PASS textarea.title: setAttribute() to null followed by IDL get 
+PASS textarea.title: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS textarea.title: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.title: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS textarea.title: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS textarea.title: IDL set to &quot;&quot; should not throw 
+PASS textarea.title: IDL set to &quot;&quot; followed by getAttribute() 
+PASS textarea.title: IDL set to &quot;&quot; followed by IDL get 
+PASS textarea.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS textarea.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS textarea.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS textarea.title: IDL set to undefined should not throw 
+PASS textarea.title: IDL set to undefined followed by getAttribute() 
+PASS textarea.title: IDL set to undefined followed by IDL get 
+PASS textarea.title: IDL set to 7 should not throw 
+PASS textarea.title: IDL set to 7 followed by getAttribute() 
+PASS textarea.title: IDL set to 7 followed by IDL get 
+PASS textarea.title: IDL set to 1.5 should not throw 
+PASS textarea.title: IDL set to 1.5 followed by getAttribute() 
+PASS textarea.title: IDL set to 1.5 followed by IDL get 
+PASS textarea.title: IDL set to true should not throw 
+PASS textarea.title: IDL set to true followed by getAttribute() 
+PASS textarea.title: IDL set to true followed by IDL get 
+PASS textarea.title: IDL set to false should not throw 
+PASS textarea.title: IDL set to false followed by getAttribute() 
+PASS textarea.title: IDL set to false followed by IDL get 
+PASS textarea.title: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS textarea.title: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS textarea.title: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.title: IDL set to NaN should not throw 
+PASS textarea.title: IDL set to NaN followed by getAttribute() 
+PASS textarea.title: IDL set to NaN followed by IDL get 
+PASS textarea.title: IDL set to Infinity should not throw 
+PASS textarea.title: IDL set to Infinity followed by getAttribute() 
+PASS textarea.title: IDL set to Infinity followed by IDL get 
+PASS textarea.title: IDL set to -Infinity should not throw 
+PASS textarea.title: IDL set to -Infinity followed by getAttribute() 
+PASS textarea.title: IDL set to -Infinity followed by IDL get 
+PASS textarea.title: IDL set to &quot;\0&quot; should not throw 
+PASS textarea.title: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS textarea.title: IDL set to &quot;\0&quot; followed by IDL get 
+PASS textarea.title: IDL set to null should not throw 
+PASS textarea.title: IDL set to null followed by getAttribute() 
+PASS textarea.title: IDL set to null followed by IDL get 
+PASS textarea.title: IDL set to object &quot;test-toString&quot; should not throw 
+PASS textarea.title: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS textarea.title: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.title: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS textarea.title: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS textarea.title: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS textarea.lang: typeof IDL attribute 
+PASS textarea.lang: IDL get with DOM attribute unset 
+PASS textarea.lang: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS textarea.lang: setAttribute() to &quot;&quot; followed by IDL get 
+PASS textarea.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS textarea.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS textarea.lang: setAttribute() to undefined followed by getAttribute() 
+PASS textarea.lang: setAttribute() to undefined followed by IDL get 
+PASS textarea.lang: setAttribute() to 7 followed by getAttribute() 
+PASS textarea.lang: setAttribute() to 7 followed by IDL get 
+PASS textarea.lang: setAttribute() to 1.5 followed by getAttribute() 
+PASS textarea.lang: setAttribute() to 1.5 followed by IDL get 
+PASS textarea.lang: setAttribute() to true followed by getAttribute() 
+PASS textarea.lang: setAttribute() to true followed by IDL get 
+PASS textarea.lang: setAttribute() to false followed by getAttribute() 
+PASS textarea.lang: setAttribute() to false followed by IDL get 
+PASS textarea.lang: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS textarea.lang: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.lang: setAttribute() to NaN followed by getAttribute() 
+PASS textarea.lang: setAttribute() to NaN followed by IDL get 
+PASS textarea.lang: setAttribute() to Infinity followed by getAttribute() 
+PASS textarea.lang: setAttribute() to Infinity followed by IDL get 
+PASS textarea.lang: setAttribute() to -Infinity followed by getAttribute() 
+PASS textarea.lang: setAttribute() to -Infinity followed by IDL get 
+PASS textarea.lang: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS textarea.lang: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS textarea.lang: setAttribute() to null followed by getAttribute() 
+PASS textarea.lang: setAttribute() to null followed by IDL get 
+PASS textarea.lang: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS textarea.lang: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.lang: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS textarea.lang: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS textarea.lang: IDL set to &quot;&quot; should not throw 
+PASS textarea.lang: IDL set to &quot;&quot; followed by getAttribute() 
+PASS textarea.lang: IDL set to &quot;&quot; followed by IDL get 
+PASS textarea.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS textarea.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS textarea.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS textarea.lang: IDL set to undefined should not throw 
+PASS textarea.lang: IDL set to undefined followed by getAttribute() 
+PASS textarea.lang: IDL set to undefined followed by IDL get 
+PASS textarea.lang: IDL set to 7 should not throw 
+PASS textarea.lang: IDL set to 7 followed by getAttribute() 
+PASS textarea.lang: IDL set to 7 followed by IDL get 
+PASS textarea.lang: IDL set to 1.5 should not throw 
+PASS textarea.lang: IDL set to 1.5 followed by getAttribute() 
+PASS textarea.lang: IDL set to 1.5 followed by IDL get 
+PASS textarea.lang: IDL set to true should not throw 
+PASS textarea.lang: IDL set to true followed by getAttribute() 
+PASS textarea.lang: IDL set to true followed by IDL get 
+PASS textarea.lang: IDL set to false should not throw 
+PASS textarea.lang: IDL set to false followed by getAttribute() 
+PASS textarea.lang: IDL set to false followed by IDL get 
+PASS textarea.lang: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS textarea.lang: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS textarea.lang: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.lang: IDL set to NaN should not throw 
+PASS textarea.lang: IDL set to NaN followed by getAttribute() 
+PASS textarea.lang: IDL set to NaN followed by IDL get 
+PASS textarea.lang: IDL set to Infinity should not throw 
+PASS textarea.lang: IDL set to Infinity followed by getAttribute() 
+PASS textarea.lang: IDL set to Infinity followed by IDL get 
+PASS textarea.lang: IDL set to -Infinity should not throw 
+PASS textarea.lang: IDL set to -Infinity followed by getAttribute() 
+PASS textarea.lang: IDL set to -Infinity followed by IDL get 
+PASS textarea.lang: IDL set to &quot;\0&quot; should not throw 
+PASS textarea.lang: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS textarea.lang: IDL set to &quot;\0&quot; followed by IDL get 
+PASS textarea.lang: IDL set to null should not throw 
+PASS textarea.lang: IDL set to null followed by getAttribute() 
+PASS textarea.lang: IDL set to null followed by IDL get 
+PASS textarea.lang: IDL set to object &quot;test-toString&quot; should not throw 
+PASS textarea.lang: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS textarea.lang: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.lang: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS textarea.lang: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS textarea.lang: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS textarea.dir: typeof IDL attribute 
+PASS textarea.dir: IDL get with DOM attribute unset 
+PASS textarea.dir: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS textarea.dir: setAttribute() to &quot;&quot; followed by IDL get 
+PASS textarea.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS textarea.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS textarea.dir: setAttribute() to undefined followed by getAttribute() 
+PASS textarea.dir: setAttribute() to undefined followed by IDL get 
+PASS textarea.dir: setAttribute() to 7 followed by getAttribute() 
+PASS textarea.dir: setAttribute() to 7 followed by IDL get 
+PASS textarea.dir: setAttribute() to 1.5 followed by getAttribute() 
+PASS textarea.dir: setAttribute() to 1.5 followed by IDL get 
+PASS textarea.dir: setAttribute() to true followed by getAttribute() 
+PASS textarea.dir: setAttribute() to true followed by IDL get 
+PASS textarea.dir: setAttribute() to false followed by getAttribute() 
+PASS textarea.dir: setAttribute() to false followed by IDL get 
+PASS textarea.dir: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS textarea.dir: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.dir: setAttribute() to NaN followed by getAttribute() 
+PASS textarea.dir: setAttribute() to NaN followed by IDL get 
+PASS textarea.dir: setAttribute() to Infinity followed by getAttribute() 
+PASS textarea.dir: setAttribute() to Infinity followed by IDL get 
+PASS textarea.dir: setAttribute() to -Infinity followed by getAttribute() 
+PASS textarea.dir: setAttribute() to -Infinity followed by IDL get 
+PASS textarea.dir: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS textarea.dir: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS textarea.dir: setAttribute() to null followed by getAttribute() 
+PASS textarea.dir: setAttribute() to null followed by IDL get 
+PASS textarea.dir: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS textarea.dir: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.dir: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS textarea.dir: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS textarea.dir: setAttribute() to &quot;ltr&quot; followed by getAttribute() 
+PASS textarea.dir: setAttribute() to &quot;ltr&quot; followed by IDL get 
+PASS textarea.dir: setAttribute() to &quot;xltr&quot; followed by getAttribute() 
+PASS textarea.dir: setAttribute() to &quot;xltr&quot; followed by IDL get 
+PASS textarea.dir: setAttribute() to &quot;ltr\0&quot; followed by getAttribute() 
+PASS textarea.dir: setAttribute() to &quot;ltr\0&quot; followed by IDL get 
+PASS textarea.dir: setAttribute() to &quot;tr&quot; followed by getAttribute() 
+PASS textarea.dir: setAttribute() to &quot;tr&quot; followed by IDL get 
+PASS textarea.dir: setAttribute() to &quot;LTR&quot; followed by getAttribute() 
+PASS textarea.dir: setAttribute() to &quot;LTR&quot; followed by IDL get 
+PASS textarea.dir: setAttribute() to &quot;rtl&quot; followed by getAttribute() 
+PASS textarea.dir: setAttribute() to &quot;rtl&quot; followed by IDL get 
+PASS textarea.dir: setAttribute() to &quot;xrtl&quot; followed by getAttribute() 
+PASS textarea.dir: setAttribute() to &quot;xrtl&quot; followed by IDL get 
+PASS textarea.dir: setAttribute() to &quot;rtl\0&quot; followed by getAttribute() 
+PASS textarea.dir: setAttribute() to &quot;rtl\0&quot; followed by IDL get 
+PASS textarea.dir: setAttribute() to &quot;tl&quot; followed by getAttribute() 
+PASS textarea.dir: setAttribute() to &quot;tl&quot; followed by IDL get 
+PASS textarea.dir: setAttribute() to &quot;RTL&quot; followed by getAttribute() 
+PASS textarea.dir: setAttribute() to &quot;RTL&quot; followed by IDL get 
+PASS textarea.dir: setAttribute() to &quot;auto&quot; followed by getAttribute() 
+PASS textarea.dir: setAttribute() to &quot;auto&quot; followed by IDL get 
+PASS textarea.dir: setAttribute() to &quot;xauto&quot; followed by getAttribute() 
+PASS textarea.dir: setAttribute() to &quot;xauto&quot; followed by IDL get 
+PASS textarea.dir: setAttribute() to &quot;auto\0&quot; followed by getAttribute() 
+PASS textarea.dir: setAttribute() to &quot;auto\0&quot; followed by IDL get 
+PASS textarea.dir: setAttribute() to &quot;uto&quot; followed by getAttribute() 
+PASS textarea.dir: setAttribute() to &quot;uto&quot; followed by IDL get 
+PASS textarea.dir: setAttribute() to &quot;AUTO&quot; followed by getAttribute() 
+PASS textarea.dir: setAttribute() to &quot;AUTO&quot; followed by IDL get 
+PASS textarea.dir: IDL set to &quot;&quot; should not throw 
+PASS textarea.dir: IDL set to &quot;&quot; followed by getAttribute() 
+PASS textarea.dir: IDL set to &quot;&quot; followed by IDL get 
+PASS textarea.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS textarea.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS textarea.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS textarea.dir: IDL set to undefined should not throw 
+PASS textarea.dir: IDL set to undefined followed by getAttribute() 
+PASS textarea.dir: IDL set to undefined followed by IDL get 
+PASS textarea.dir: IDL set to 7 should not throw 
+PASS textarea.dir: IDL set to 7 followed by getAttribute() 
+PASS textarea.dir: IDL set to 7 followed by IDL get 
+PASS textarea.dir: IDL set to 1.5 should not throw 
+PASS textarea.dir: IDL set to 1.5 followed by getAttribute() 
+PASS textarea.dir: IDL set to 1.5 followed by IDL get 
+PASS textarea.dir: IDL set to true should not throw 
+PASS textarea.dir: IDL set to true followed by getAttribute() 
+PASS textarea.dir: IDL set to true followed by IDL get 
+PASS textarea.dir: IDL set to false should not throw 
+PASS textarea.dir: IDL set to false followed by getAttribute() 
+PASS textarea.dir: IDL set to false followed by IDL get 
+PASS textarea.dir: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS textarea.dir: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS textarea.dir: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.dir: IDL set to NaN should not throw 
+PASS textarea.dir: IDL set to NaN followed by getAttribute() 
+PASS textarea.dir: IDL set to NaN followed by IDL get 
+PASS textarea.dir: IDL set to Infinity should not throw 
+PASS textarea.dir: IDL set to Infinity followed by getAttribute() 
+PASS textarea.dir: IDL set to Infinity followed by IDL get 
+PASS textarea.dir: IDL set to -Infinity should not throw 
+PASS textarea.dir: IDL set to -Infinity followed by getAttribute() 
+PASS textarea.dir: IDL set to -Infinity followed by IDL get 
+PASS textarea.dir: IDL set to &quot;\0&quot; should not throw 
+PASS textarea.dir: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS textarea.dir: IDL set to &quot;\0&quot; followed by IDL get 
+PASS textarea.dir: IDL set to null should not throw 
+PASS textarea.dir: IDL set to null followed by IDL get 
+PASS textarea.dir: IDL set to object &quot;test-toString&quot; should not throw 
+PASS textarea.dir: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS textarea.dir: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.dir: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS textarea.dir: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS textarea.dir: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS textarea.dir: IDL set to &quot;ltr&quot; should not throw 
+PASS textarea.dir: IDL set to &quot;ltr&quot; followed by getAttribute() 
+PASS textarea.dir: IDL set to &quot;ltr&quot; followed by IDL get 
+PASS textarea.dir: IDL set to &quot;xltr&quot; should not throw 
+PASS textarea.dir: IDL set to &quot;xltr&quot; followed by getAttribute() 
+PASS textarea.dir: IDL set to &quot;xltr&quot; followed by IDL get 
+PASS textarea.dir: IDL set to &quot;ltr\0&quot; should not throw 
+PASS textarea.dir: IDL set to &quot;ltr\0&quot; followed by getAttribute() 
+PASS textarea.dir: IDL set to &quot;ltr\0&quot; followed by IDL get 
+PASS textarea.dir: IDL set to &quot;tr&quot; should not throw 
+PASS textarea.dir: IDL set to &quot;tr&quot; followed by getAttribute() 
+PASS textarea.dir: IDL set to &quot;tr&quot; followed by IDL get 
+PASS textarea.dir: IDL set to &quot;LTR&quot; should not throw 
+PASS textarea.dir: IDL set to &quot;LTR&quot; followed by getAttribute() 
+PASS textarea.dir: IDL set to &quot;LTR&quot; followed by IDL get 
+PASS textarea.dir: IDL set to &quot;rtl&quot; should not throw 
+PASS textarea.dir: IDL set to &quot;rtl&quot; followed by getAttribute() 
+PASS textarea.dir: IDL set to &quot;rtl&quot; followed by IDL get 
+PASS textarea.dir: IDL set to &quot;xrtl&quot; should not throw 
+PASS textarea.dir: IDL set to &quot;xrtl&quot; followed by getAttribute() 
+PASS textarea.dir: IDL set to &quot;xrtl&quot; followed by IDL get 
+PASS textarea.dir: IDL set to &quot;rtl\0&quot; should not throw 
+PASS textarea.dir: IDL set to &quot;rtl\0&quot; followed by getAttribute() 
+PASS textarea.dir: IDL set to &quot;rtl\0&quot; followed by IDL get 
+PASS textarea.dir: IDL set to &quot;tl&quot; should not throw 
+PASS textarea.dir: IDL set to &quot;tl&quot; followed by getAttribute() 
+PASS textarea.dir: IDL set to &quot;tl&quot; followed by IDL get 
+PASS textarea.dir: IDL set to &quot;RTL&quot; should not throw 
+PASS textarea.dir: IDL set to &quot;RTL&quot; followed by getAttribute() 
+PASS textarea.dir: IDL set to &quot;RTL&quot; followed by IDL get 
+PASS textarea.dir: IDL set to &quot;auto&quot; should not throw 
+PASS textarea.dir: IDL set to &quot;auto&quot; followed by getAttribute() 
+PASS textarea.dir: IDL set to &quot;auto&quot; followed by IDL get 
+PASS textarea.dir: IDL set to &quot;xauto&quot; should not throw 
+PASS textarea.dir: IDL set to &quot;xauto&quot; followed by getAttribute() 
+PASS textarea.dir: IDL set to &quot;xauto&quot; followed by IDL get 
+PASS textarea.dir: IDL set to &quot;auto\0&quot; should not throw 
+PASS textarea.dir: IDL set to &quot;auto\0&quot; followed by getAttribute() 
+PASS textarea.dir: IDL set to &quot;auto\0&quot; followed by IDL get 
+PASS textarea.dir: IDL set to &quot;uto&quot; should not throw 
+PASS textarea.dir: IDL set to &quot;uto&quot; followed by getAttribute() 
+PASS textarea.dir: IDL set to &quot;uto&quot; followed by IDL get 
+PASS textarea.dir: IDL set to &quot;AUTO&quot; should not throw 
+PASS textarea.dir: IDL set to &quot;AUTO&quot; followed by getAttribute() 
+PASS textarea.dir: IDL set to &quot;AUTO&quot; followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): typeof IDL attribute 
+PASS textarea.className (&lt;textarea class&gt;): IDL get with DOM attribute unset 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to &quot;&quot; followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to undefined followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to undefined followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to 7 followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to 7 followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to 1.5 followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to 1.5 followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to true followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to true followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to false followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to false followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to NaN followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to NaN followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to Infinity followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to Infinity followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to -Infinity followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to -Infinity followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to null followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to null followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to &quot;&quot; should not throw 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to &quot;&quot; followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to &quot;&quot; followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to undefined should not throw 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to undefined followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to undefined followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to 7 should not throw 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to 7 followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to 7 followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to 1.5 should not throw 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to 1.5 followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to 1.5 followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to true should not throw 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to true followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to true followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to false should not throw 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to false followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to false followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to object &quot;[object Object]&quot; should not throw 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to NaN should not throw 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to NaN followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to NaN followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to Infinity should not throw 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to Infinity followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to Infinity followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to -Infinity should not throw 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to -Infinity followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to -Infinity followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to &quot;\0&quot; should not throw 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to &quot;\0&quot; followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to null should not throw 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to null followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to null followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to object &quot;test-toString&quot; should not throw 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS textarea.className (&lt;textarea class&gt;): IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS textarea.hidden: typeof IDL attribute 
+PASS textarea.hidden: IDL get with DOM attribute unset 
+PASS textarea.hidden: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS textarea.hidden: setAttribute() to &quot;&quot; followed by IDL get 
+PASS textarea.hidden: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS textarea.hidden: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS textarea.hidden: setAttribute() to undefined followed by getAttribute() 
+PASS textarea.hidden: setAttribute() to undefined followed by IDL get 
+PASS textarea.hidden: setAttribute() to null followed by getAttribute() 
+PASS textarea.hidden: setAttribute() to null followed by IDL get 
+PASS textarea.hidden: setAttribute() to 7 followed by getAttribute() 
+PASS textarea.hidden: setAttribute() to 7 followed by IDL get 
+PASS textarea.hidden: setAttribute() to 1.5 followed by getAttribute() 
+PASS textarea.hidden: setAttribute() to 1.5 followed by IDL get 
+PASS textarea.hidden: setAttribute() to true followed by getAttribute() 
+PASS textarea.hidden: setAttribute() to true followed by IDL get 
+PASS textarea.hidden: setAttribute() to false followed by getAttribute() 
+PASS textarea.hidden: setAttribute() to false followed by IDL get 
+PASS textarea.hidden: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS textarea.hidden: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.hidden: setAttribute() to NaN followed by getAttribute() 
+PASS textarea.hidden: setAttribute() to NaN followed by IDL get 
+PASS textarea.hidden: setAttribute() to Infinity followed by getAttribute() 
+PASS textarea.hidden: setAttribute() to Infinity followed by IDL get 
+PASS textarea.hidden: setAttribute() to -Infinity followed by getAttribute() 
+PASS textarea.hidden: setAttribute() to -Infinity followed by IDL get 
+PASS textarea.hidden: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS textarea.hidden: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS textarea.hidden: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS textarea.hidden: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS textarea.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS textarea.hidden: setAttribute() to &quot;hidden&quot; followed by getAttribute() 
+PASS textarea.hidden: setAttribute() to &quot;hidden&quot; followed by IDL get 
+PASS textarea.hidden: IDL set to &quot;&quot; should not throw 
+PASS textarea.hidden: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS textarea.hidden: IDL set to &quot;&quot; followed by IDL get 
+PASS textarea.hidden: IDL set to &quot; foo &quot; should not throw 
+PASS textarea.hidden: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS textarea.hidden: IDL set to &quot; foo &quot; followed by IDL get 
+PASS textarea.hidden: IDL set to undefined should not throw 
+PASS textarea.hidden: IDL set to undefined followed by hasAttribute() 
+PASS textarea.hidden: IDL set to undefined followed by IDL get 
+PASS textarea.hidden: IDL set to null should not throw 
+PASS textarea.hidden: IDL set to null followed by hasAttribute() 
+PASS textarea.hidden: IDL set to null followed by IDL get 
+PASS textarea.hidden: IDL set to 7 should not throw 
+PASS textarea.hidden: IDL set to 7 followed by hasAttribute() 
+PASS textarea.hidden: IDL set to 7 followed by IDL get 
+PASS textarea.hidden: IDL set to 1.5 should not throw 
+PASS textarea.hidden: IDL set to 1.5 followed by hasAttribute() 
+PASS textarea.hidden: IDL set to 1.5 followed by IDL get 
+PASS textarea.hidden: IDL set to true should not throw 
+PASS textarea.hidden: IDL set to true followed by hasAttribute() 
+PASS textarea.hidden: IDL set to true followed by IDL get 
+PASS textarea.hidden: IDL set to false should not throw 
+PASS textarea.hidden: IDL set to false followed by hasAttribute() 
+PASS textarea.hidden: IDL set to false followed by IDL get 
+PASS textarea.hidden: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS textarea.hidden: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS textarea.hidden: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.hidden: IDL set to NaN should not throw 
+PASS textarea.hidden: IDL set to NaN followed by hasAttribute() 
+PASS textarea.hidden: IDL set to NaN followed by IDL get 
+PASS textarea.hidden: IDL set to Infinity should not throw 
+PASS textarea.hidden: IDL set to Infinity followed by hasAttribute() 
+PASS textarea.hidden: IDL set to Infinity followed by IDL get 
+PASS textarea.hidden: IDL set to -Infinity should not throw 
+PASS textarea.hidden: IDL set to -Infinity followed by hasAttribute() 
+PASS textarea.hidden: IDL set to -Infinity followed by IDL get 
+PASS textarea.hidden: IDL set to &quot;\0&quot; should not throw 
+PASS textarea.hidden: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS textarea.hidden: IDL set to &quot;\0&quot; followed by IDL get 
+PASS textarea.hidden: IDL set to object &quot;test-toString&quot; should not throw 
+PASS textarea.hidden: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS textarea.hidden: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.hidden: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS textarea.hidden: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS textarea.hidden: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS textarea.accessKey: typeof IDL attribute 
+PASS textarea.accessKey: IDL get with DOM attribute unset 
+PASS textarea.accessKey: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS textarea.accessKey: setAttribute() to &quot;&quot; followed by IDL get 
+PASS textarea.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS textarea.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS textarea.accessKey: setAttribute() to undefined followed by getAttribute() 
+PASS textarea.accessKey: setAttribute() to undefined followed by IDL get 
+PASS textarea.accessKey: setAttribute() to 7 followed by getAttribute() 
+PASS textarea.accessKey: setAttribute() to 7 followed by IDL get 
+PASS textarea.accessKey: setAttribute() to 1.5 followed by getAttribute() 
+PASS textarea.accessKey: setAttribute() to 1.5 followed by IDL get 
+PASS textarea.accessKey: setAttribute() to true followed by getAttribute() 
+PASS textarea.accessKey: setAttribute() to true followed by IDL get 
+PASS textarea.accessKey: setAttribute() to false followed by getAttribute() 
+PASS textarea.accessKey: setAttribute() to false followed by IDL get 
+PASS textarea.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS textarea.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.accessKey: setAttribute() to NaN followed by getAttribute() 
+PASS textarea.accessKey: setAttribute() to NaN followed by IDL get 
+PASS textarea.accessKey: setAttribute() to Infinity followed by getAttribute() 
+PASS textarea.accessKey: setAttribute() to Infinity followed by IDL get 
+PASS textarea.accessKey: setAttribute() to -Infinity followed by getAttribute() 
+PASS textarea.accessKey: setAttribute() to -Infinity followed by IDL get 
+PASS textarea.accessKey: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS textarea.accessKey: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS textarea.accessKey: setAttribute() to null followed by getAttribute() 
+PASS textarea.accessKey: setAttribute() to null followed by IDL get 
+PASS textarea.accessKey: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS textarea.accessKey: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS textarea.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS textarea.accessKey: IDL set to &quot;&quot; should not throw 
+PASS textarea.accessKey: IDL set to &quot;&quot; followed by getAttribute() 
+PASS textarea.accessKey: IDL set to &quot;&quot; followed by IDL get 
+PASS textarea.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS textarea.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS textarea.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS textarea.accessKey: IDL set to undefined should not throw 
+PASS textarea.accessKey: IDL set to undefined followed by getAttribute() 
+PASS textarea.accessKey: IDL set to undefined followed by IDL get 
+PASS textarea.accessKey: IDL set to 7 should not throw 
+PASS textarea.accessKey: IDL set to 7 followed by getAttribute() 
+PASS textarea.accessKey: IDL set to 7 followed by IDL get 
+PASS textarea.accessKey: IDL set to 1.5 should not throw 
+PASS textarea.accessKey: IDL set to 1.5 followed by getAttribute() 
+PASS textarea.accessKey: IDL set to 1.5 followed by IDL get 
+PASS textarea.accessKey: IDL set to true should not throw 
+PASS textarea.accessKey: IDL set to true followed by getAttribute() 
+PASS textarea.accessKey: IDL set to true followed by IDL get 
+PASS textarea.accessKey: IDL set to false should not throw 
+PASS textarea.accessKey: IDL set to false followed by getAttribute() 
+PASS textarea.accessKey: IDL set to false followed by IDL get 
+PASS textarea.accessKey: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS textarea.accessKey: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS textarea.accessKey: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.accessKey: IDL set to NaN should not throw 
+PASS textarea.accessKey: IDL set to NaN followed by getAttribute() 
+PASS textarea.accessKey: IDL set to NaN followed by IDL get 
+PASS textarea.accessKey: IDL set to Infinity should not throw 
+PASS textarea.accessKey: IDL set to Infinity followed by getAttribute() 
+PASS textarea.accessKey: IDL set to Infinity followed by IDL get 
+PASS textarea.accessKey: IDL set to -Infinity should not throw 
+PASS textarea.accessKey: IDL set to -Infinity followed by getAttribute() 
+PASS textarea.accessKey: IDL set to -Infinity followed by IDL get 
+PASS textarea.accessKey: IDL set to &quot;\0&quot; should not throw 
+PASS textarea.accessKey: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS textarea.accessKey: IDL set to &quot;\0&quot; followed by IDL get 
+PASS textarea.accessKey: IDL set to null should not throw 
+PASS textarea.accessKey: IDL set to null followed by getAttribute() 
+PASS textarea.accessKey: IDL set to null followed by IDL get 
+PASS textarea.accessKey: IDL set to object &quot;test-toString&quot; should not throw 
+PASS textarea.accessKey: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS textarea.accessKey: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.accessKey: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS textarea.accessKey: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS textarea.accessKey: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS textarea.tabIndex: typeof IDL attribute 
+PASS textarea.tabIndex: setAttribute() to -36 followed by getAttribute() 
+PASS textarea.tabIndex: setAttribute() to -36 followed by IDL get 
+PASS textarea.tabIndex: setAttribute() to -1 followed by getAttribute() 
+PASS textarea.tabIndex: setAttribute() to -1 followed by IDL get 
+PASS textarea.tabIndex: setAttribute() to 0 followed by getAttribute() 
+PASS textarea.tabIndex: setAttribute() to 0 followed by IDL get 
+PASS textarea.tabIndex: setAttribute() to 1 followed by getAttribute() 
+PASS textarea.tabIndex: setAttribute() to 1 followed by IDL get 
+PASS textarea.tabIndex: setAttribute() to 2147483647 followed by getAttribute() 
+PASS textarea.tabIndex: setAttribute() to 2147483647 followed by IDL get 
+PASS textarea.tabIndex: setAttribute() to -2147483648 followed by getAttribute() 
+PASS textarea.tabIndex: setAttribute() to -2147483648 followed by IDL get 
+PASS textarea.tabIndex: setAttribute() to &quot;-1&quot; followed by getAttribute() 
+PASS textarea.tabIndex: setAttribute() to &quot;-1&quot; followed by IDL get 
+PASS textarea.tabIndex: setAttribute() to &quot;-0&quot; followed by getAttribute() 
+PASS textarea.tabIndex: setAttribute() to &quot;-0&quot; followed by IDL get 
+PASS textarea.tabIndex: setAttribute() to &quot;0&quot; followed by getAttribute() 
+PASS textarea.tabIndex: setAttribute() to &quot;0&quot; followed by IDL get 
+PASS textarea.tabIndex: setAttribute() to &quot;1&quot; followed by getAttribute() 
+PASS textarea.tabIndex: setAttribute() to &quot;1&quot; followed by IDL get 
+PASS textarea.tabIndex: setAttribute() to &quot;\t7&quot; followed by getAttribute() 
+PASS textarea.tabIndex: setAttribute() to &quot;\t7&quot; followed by IDL get 
+PASS textarea.tabIndex: setAttribute() to &quot;\f7&quot; followed by getAttribute() 
+PASS textarea.tabIndex: setAttribute() to &quot;\f7&quot; followed by IDL get 
+PASS textarea.tabIndex: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.tabIndex: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.tabIndex: setAttribute() to &quot;\n7&quot; followed by getAttribute() 
+PASS textarea.tabIndex: setAttribute() to &quot;\n7&quot; followed by IDL get 
+PASS textarea.tabIndex: setAttribute() to &quot;\r7&quot; followed by getAttribute() 
+PASS textarea.tabIndex: setAttribute() to &quot;\r7&quot; followed by IDL get 
+PASS textarea.tabIndex: setAttribute() to 1.5 followed by getAttribute() 
+PASS textarea.tabIndex: setAttribute() to 1.5 followed by IDL get 
+PASS textarea.tabIndex: setAttribute() to object &quot;2&quot; followed by getAttribute() 
+PASS textarea.tabIndex: setAttribute() to object &quot;2&quot; followed by IDL get 
+PASS textarea.tabIndex: IDL set to -36 should not throw 
+PASS textarea.tabIndex: IDL set to -36 followed by getAttribute() 
+PASS textarea.tabIndex: IDL set to -36 followed by IDL get 
+PASS textarea.tabIndex: IDL set to -1 should not throw 
+PASS textarea.tabIndex: IDL set to -1 followed by getAttribute() 
+PASS textarea.tabIndex: IDL set to -1 followed by IDL get 
+PASS textarea.tabIndex: IDL set to 0 should not throw 
+PASS textarea.tabIndex: IDL set to 0 followed by getAttribute() 
+PASS textarea.tabIndex: IDL set to 0 followed by IDL get 
+PASS textarea.tabIndex: IDL set to 1 should not throw 
+PASS textarea.tabIndex: IDL set to 1 followed by getAttribute() 
+PASS textarea.tabIndex: IDL set to 1 followed by IDL get 
+PASS textarea.tabIndex: IDL set to 2147483647 should not throw 
+PASS textarea.tabIndex: IDL set to 2147483647 followed by getAttribute() 
+PASS textarea.tabIndex: IDL set to 2147483647 followed by IDL get 
+PASS textarea.tabIndex: IDL set to -2147483648 should not throw 
+PASS textarea.tabIndex: IDL set to -2147483648 followed by getAttribute() 
+PASS textarea.tabIndex: IDL set to -2147483648 followed by IDL get 
+PASS textarea.autofocus: typeof IDL attribute 
+PASS textarea.autofocus: IDL get with DOM attribute unset 
+PASS textarea.autofocus: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS textarea.autofocus: setAttribute() to &quot;&quot; followed by IDL get 
+PASS textarea.autofocus: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS textarea.autofocus: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS textarea.autofocus: setAttribute() to undefined followed by getAttribute() 
+PASS textarea.autofocus: setAttribute() to undefined followed by IDL get 
+PASS textarea.autofocus: setAttribute() to null followed by getAttribute() 
+PASS textarea.autofocus: setAttribute() to null followed by IDL get 
+PASS textarea.autofocus: setAttribute() to 7 followed by getAttribute() 
+PASS textarea.autofocus: setAttribute() to 7 followed by IDL get 
+PASS textarea.autofocus: setAttribute() to 1.5 followed by getAttribute() 
+PASS textarea.autofocus: setAttribute() to 1.5 followed by IDL get 
+PASS textarea.autofocus: setAttribute() to true followed by getAttribute() 
+PASS textarea.autofocus: setAttribute() to true followed by IDL get 
+PASS textarea.autofocus: setAttribute() to false followed by getAttribute() 
+PASS textarea.autofocus: setAttribute() to false followed by IDL get 
+PASS textarea.autofocus: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS textarea.autofocus: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.autofocus: setAttribute() to NaN followed by getAttribute() 
+PASS textarea.autofocus: setAttribute() to NaN followed by IDL get 
+PASS textarea.autofocus: setAttribute() to Infinity followed by getAttribute() 
+PASS textarea.autofocus: setAttribute() to Infinity followed by IDL get 
+PASS textarea.autofocus: setAttribute() to -Infinity followed by getAttribute() 
+PASS textarea.autofocus: setAttribute() to -Infinity followed by IDL get 
+PASS textarea.autofocus: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS textarea.autofocus: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS textarea.autofocus: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS textarea.autofocus: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.autofocus: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS textarea.autofocus: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS textarea.autofocus: setAttribute() to &quot;autofocus&quot; followed by getAttribute() 
+PASS textarea.autofocus: setAttribute() to &quot;autofocus&quot; followed by IDL get 
+PASS textarea.autofocus: IDL set to &quot;&quot; should not throw 
+PASS textarea.autofocus: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS textarea.autofocus: IDL set to &quot;&quot; followed by IDL get 
+PASS textarea.autofocus: IDL set to &quot; foo &quot; should not throw 
+PASS textarea.autofocus: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS textarea.autofocus: IDL set to &quot; foo &quot; followed by IDL get 
+PASS textarea.autofocus: IDL set to undefined should not throw 
+PASS textarea.autofocus: IDL set to undefined followed by hasAttribute() 
+PASS textarea.autofocus: IDL set to undefined followed by IDL get 
+PASS textarea.autofocus: IDL set to null should not throw 
+PASS textarea.autofocus: IDL set to null followed by hasAttribute() 
+PASS textarea.autofocus: IDL set to null followed by IDL get 
+PASS textarea.autofocus: IDL set to 7 should not throw 
+PASS textarea.autofocus: IDL set to 7 followed by hasAttribute() 
+PASS textarea.autofocus: IDL set to 7 followed by IDL get 
+PASS textarea.autofocus: IDL set to 1.5 should not throw 
+PASS textarea.autofocus: IDL set to 1.5 followed by hasAttribute() 
+PASS textarea.autofocus: IDL set to 1.5 followed by IDL get 
+PASS textarea.autofocus: IDL set to true should not throw 
+PASS textarea.autofocus: IDL set to true followed by hasAttribute() 
+PASS textarea.autofocus: IDL set to true followed by IDL get 
+PASS textarea.autofocus: IDL set to false should not throw 
+PASS textarea.autofocus: IDL set to false followed by hasAttribute() 
+PASS textarea.autofocus: IDL set to false followed by IDL get 
+PASS textarea.autofocus: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS textarea.autofocus: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS textarea.autofocus: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.autofocus: IDL set to NaN should not throw 
+PASS textarea.autofocus: IDL set to NaN followed by hasAttribute() 
+PASS textarea.autofocus: IDL set to NaN followed by IDL get 
+PASS textarea.autofocus: IDL set to Infinity should not throw 
+PASS textarea.autofocus: IDL set to Infinity followed by hasAttribute() 
+PASS textarea.autofocus: IDL set to Infinity followed by IDL get 
+PASS textarea.autofocus: IDL set to -Infinity should not throw 
+PASS textarea.autofocus: IDL set to -Infinity followed by hasAttribute() 
+PASS textarea.autofocus: IDL set to -Infinity followed by IDL get 
+PASS textarea.autofocus: IDL set to &quot;\0&quot; should not throw 
+PASS textarea.autofocus: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS textarea.autofocus: IDL set to &quot;\0&quot; followed by IDL get 
+PASS textarea.autofocus: IDL set to object &quot;test-toString&quot; should not throw 
+PASS textarea.autofocus: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS textarea.autofocus: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.autofocus: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS textarea.autofocus: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS textarea.autofocus: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS textarea.cols: typeof IDL attribute 
+PASS textarea.cols: IDL get with DOM attribute unset 
+PASS textarea.cols: setAttribute() to -2147483649 followed by getAttribute() 
+PASS textarea.cols: setAttribute() to -2147483649 followed by IDL get 
+PASS textarea.cols: setAttribute() to -2147483648 followed by getAttribute() 
+PASS textarea.cols: setAttribute() to -2147483648 followed by IDL get 
+PASS textarea.cols: setAttribute() to -36 followed by getAttribute() 
+PASS textarea.cols: setAttribute() to -36 followed by IDL get 
+PASS textarea.cols: setAttribute() to -1 followed by getAttribute() 
+PASS textarea.cols: setAttribute() to -1 followed by IDL get 
+PASS textarea.cols: setAttribute() to 0 followed by getAttribute() 
+PASS textarea.cols: setAttribute() to 0 followed by IDL get 
+PASS textarea.cols: setAttribute() to 1 followed by getAttribute() 
+PASS textarea.cols: setAttribute() to 1 followed by IDL get 
+PASS textarea.cols: setAttribute() to 2147483647 followed by getAttribute() 
+PASS textarea.cols: setAttribute() to 2147483647 followed by IDL get 
+PASS textarea.cols: setAttribute() to 2147483648 followed by getAttribute() 
+PASS textarea.cols: setAttribute() to 2147483648 followed by IDL get 
+PASS textarea.cols: setAttribute() to 4294967295 followed by getAttribute() 
+PASS textarea.cols: setAttribute() to 4294967295 followed by IDL get 
+PASS textarea.cols: setAttribute() to 4294967296 followed by getAttribute() 
+PASS textarea.cols: setAttribute() to 4294967296 followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot;&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot;-1&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot;-1&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot;-0&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot;-0&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot;0&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot;0&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot;1&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot;1&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot;\t7&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot;\t7&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot;\v7&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot;\v7&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot;\f7&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot;\f7&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot;7&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot;7&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot;\n7&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot;\n7&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot;\r7&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot;\r7&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot;
7&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot;
7&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot;
7&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot;
7&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot;᠎7&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot;᠎7&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to undefined followed by getAttribute() 
+PASS textarea.cols: setAttribute() to undefined followed by IDL get 
+PASS textarea.cols: setAttribute() to 1.5 followed by getAttribute() 
+PASS textarea.cols: setAttribute() to 1.5 followed by IDL get 
+PASS textarea.cols: setAttribute() to true followed by getAttribute() 
+PASS textarea.cols: setAttribute() to true followed by IDL get 
+PASS textarea.cols: setAttribute() to false followed by getAttribute() 
+PASS textarea.cols: setAttribute() to false followed by IDL get 
+PASS textarea.cols: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to NaN followed by getAttribute() 
+PASS textarea.cols: setAttribute() to NaN followed by IDL get 
+PASS textarea.cols: setAttribute() to Infinity followed by getAttribute() 
+PASS textarea.cols: setAttribute() to Infinity followed by IDL get 
+PASS textarea.cols: setAttribute() to -Infinity followed by getAttribute() 
+PASS textarea.cols: setAttribute() to -Infinity followed by IDL get 
+PASS textarea.cols: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to object &quot;2&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to object &quot;2&quot; followed by IDL get 
+PASS textarea.cols: setAttribute() to object &quot;3&quot; followed by getAttribute() 
+PASS textarea.cols: setAttribute() to object &quot;3&quot; followed by IDL get 
+FAIL textarea.cols: IDL set to 0 must throw INDEX_SIZE_ERR assert_throws: function &quot;function () {
+                idlObj[idlName] = idlTests[...&quot; did not throw
+PASS textarea.cols: IDL set to 1 should not throw 
+PASS textarea.cols: IDL set to 1 followed by getAttribute() 
+PASS textarea.cols: IDL set to 1 followed by IDL get 
+PASS textarea.cols: IDL set to 2147483647 should not throw 
+PASS textarea.cols: IDL set to 2147483647 followed by getAttribute() 
+PASS textarea.cols: IDL set to 2147483647 followed by IDL get 
+PASS textarea.cols: IDL set to 2147483648 should not throw 
+PASS textarea.cols: IDL set to 2147483648 followed by getAttribute() 
+PASS textarea.cols: IDL set to 2147483648 followed by IDL get 
+PASS textarea.cols: IDL set to 4294967295 should not throw 
+PASS textarea.cols: IDL set to 4294967295 followed by getAttribute() 
+PASS textarea.cols: IDL set to 4294967295 followed by IDL get 
+PASS textarea.dirName: typeof IDL attribute 
+PASS textarea.dirName: IDL get with DOM attribute unset 
+PASS textarea.dirName: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS textarea.dirName: setAttribute() to &quot;&quot; followed by IDL get 
+PASS textarea.dirName: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS textarea.dirName: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS textarea.dirName: setAttribute() to undefined followed by getAttribute() 
+PASS textarea.dirName: setAttribute() to undefined followed by IDL get 
+PASS textarea.dirName: setAttribute() to 7 followed by getAttribute() 
+PASS textarea.dirName: setAttribute() to 7 followed by IDL get 
+PASS textarea.dirName: setAttribute() to 1.5 followed by getAttribute() 
+PASS textarea.dirName: setAttribute() to 1.5 followed by IDL get 
+PASS textarea.dirName: setAttribute() to true followed by getAttribute() 
+PASS textarea.dirName: setAttribute() to true followed by IDL get 
+PASS textarea.dirName: setAttribute() to false followed by getAttribute() 
+PASS textarea.dirName: setAttribute() to false followed by IDL get 
+PASS textarea.dirName: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS textarea.dirName: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.dirName: setAttribute() to NaN followed by getAttribute() 
+PASS textarea.dirName: setAttribute() to NaN followed by IDL get 
+PASS textarea.dirName: setAttribute() to Infinity followed by getAttribute() 
+PASS textarea.dirName: setAttribute() to Infinity followed by IDL get 
+PASS textarea.dirName: setAttribute() to -Infinity followed by getAttribute() 
+PASS textarea.dirName: setAttribute() to -Infinity followed by IDL get 
+PASS textarea.dirName: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS textarea.dirName: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS textarea.dirName: setAttribute() to null followed by getAttribute() 
+PASS textarea.dirName: setAttribute() to null followed by IDL get 
+PASS textarea.dirName: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS textarea.dirName: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.dirName: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS textarea.dirName: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS textarea.dirName: IDL set to &quot;&quot; should not throw 
+PASS textarea.dirName: IDL set to &quot;&quot; followed by getAttribute() 
+PASS textarea.dirName: IDL set to &quot;&quot; followed by IDL get 
+PASS textarea.dirName: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS textarea.dirName: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS textarea.dirName: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS textarea.dirName: IDL set to undefined should not throw 
+PASS textarea.dirName: IDL set to undefined followed by getAttribute() 
+PASS textarea.dirName: IDL set to undefined followed by IDL get 
+PASS textarea.dirName: IDL set to 7 should not throw 
+PASS textarea.dirName: IDL set to 7 followed by getAttribute() 
+PASS textarea.dirName: IDL set to 7 followed by IDL get 
+PASS textarea.dirName: IDL set to 1.5 should not throw 
+PASS textarea.dirName: IDL set to 1.5 followed by getAttribute() 
+PASS textarea.dirName: IDL set to 1.5 followed by IDL get 
+PASS textarea.dirName: IDL set to true should not throw 
+PASS textarea.dirName: IDL set to true followed by getAttribute() 
+PASS textarea.dirName: IDL set to true followed by IDL get 
+PASS textarea.dirName: IDL set to false should not throw 
+PASS textarea.dirName: IDL set to false followed by getAttribute() 
+PASS textarea.dirName: IDL set to false followed by IDL get 
+PASS textarea.dirName: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS textarea.dirName: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS textarea.dirName: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.dirName: IDL set to NaN should not throw 
+PASS textarea.dirName: IDL set to NaN followed by getAttribute() 
+PASS textarea.dirName: IDL set to NaN followed by IDL get 
+PASS textarea.dirName: IDL set to Infinity should not throw 
+PASS textarea.dirName: IDL set to Infinity followed by getAttribute() 
+PASS textarea.dirName: IDL set to Infinity followed by IDL get 
+PASS textarea.dirName: IDL set to -Infinity should not throw 
+PASS textarea.dirName: IDL set to -Infinity followed by getAttribute() 
+PASS textarea.dirName: IDL set to -Infinity followed by IDL get 
+PASS textarea.dirName: IDL set to &quot;\0&quot; should not throw 
+PASS textarea.dirName: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS textarea.dirName: IDL set to &quot;\0&quot; followed by IDL get 
+PASS textarea.dirName: IDL set to null should not throw 
+PASS textarea.dirName: IDL set to null followed by getAttribute() 
+PASS textarea.dirName: IDL set to null followed by IDL get 
+PASS textarea.dirName: IDL set to object &quot;test-toString&quot; should not throw 
+PASS textarea.dirName: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS textarea.dirName: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.dirName: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS textarea.dirName: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS textarea.dirName: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS textarea.disabled: typeof IDL attribute 
+PASS textarea.disabled: IDL get with DOM attribute unset 
+PASS textarea.disabled: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS textarea.disabled: setAttribute() to &quot;&quot; followed by IDL get 
+PASS textarea.disabled: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS textarea.disabled: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS textarea.disabled: setAttribute() to undefined followed by getAttribute() 
+PASS textarea.disabled: setAttribute() to undefined followed by IDL get 
+PASS textarea.disabled: setAttribute() to null followed by getAttribute() 
+PASS textarea.disabled: setAttribute() to null followed by IDL get 
+PASS textarea.disabled: setAttribute() to 7 followed by getAttribute() 
+PASS textarea.disabled: setAttribute() to 7 followed by IDL get 
+PASS textarea.disabled: setAttribute() to 1.5 followed by getAttribute() 
+PASS textarea.disabled: setAttribute() to 1.5 followed by IDL get 
+PASS textarea.disabled: setAttribute() to true followed by getAttribute() 
+PASS textarea.disabled: setAttribute() to true followed by IDL get 
+PASS textarea.disabled: setAttribute() to false followed by getAttribute() 
+PASS textarea.disabled: setAttribute() to false followed by IDL get 
+PASS textarea.disabled: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS textarea.disabled: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.disabled: setAttribute() to NaN followed by getAttribute() 
+PASS textarea.disabled: setAttribute() to NaN followed by IDL get 
+PASS textarea.disabled: setAttribute() to Infinity followed by getAttribute() 
+PASS textarea.disabled: setAttribute() to Infinity followed by IDL get 
+PASS textarea.disabled: setAttribute() to -Infinity followed by getAttribute() 
+PASS textarea.disabled: setAttribute() to -Infinity followed by IDL get 
+PASS textarea.disabled: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS textarea.disabled: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS textarea.disabled: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS textarea.disabled: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.disabled: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS textarea.disabled: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS textarea.disabled: setAttribute() to &quot;disabled&quot; followed by getAttribute() 
+PASS textarea.disabled: setAttribute() to &quot;disabled&quot; followed by IDL get 
+PASS textarea.disabled: IDL set to &quot;&quot; should not throw 
+PASS textarea.disabled: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS textarea.disabled: IDL set to &quot;&quot; followed by IDL get 
+PASS textarea.disabled: IDL set to &quot; foo &quot; should not throw 
+PASS textarea.disabled: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS textarea.disabled: IDL set to &quot; foo &quot; followed by IDL get 
+PASS textarea.disabled: IDL set to undefined should not throw 
+PASS textarea.disabled: IDL set to undefined followed by hasAttribute() 
+PASS textarea.disabled: IDL set to undefined followed by IDL get 
+PASS textarea.disabled: IDL set to null should not throw 
+PASS textarea.disabled: IDL set to null followed by hasAttribute() 
+PASS textarea.disabled: IDL set to null followed by IDL get 
+PASS textarea.disabled: IDL set to 7 should not throw 
+PASS textarea.disabled: IDL set to 7 followed by hasAttribute() 
+PASS textarea.disabled: IDL set to 7 followed by IDL get 
+PASS textarea.disabled: IDL set to 1.5 should not throw 
+PASS textarea.disabled: IDL set to 1.5 followed by hasAttribute() 
+PASS textarea.disabled: IDL set to 1.5 followed by IDL get 
+PASS textarea.disabled: IDL set to true should not throw 
+PASS textarea.disabled: IDL set to true followed by hasAttribute() 
+PASS textarea.disabled: IDL set to true followed by IDL get 
+PASS textarea.disabled: IDL set to false should not throw 
+PASS textarea.disabled: IDL set to false followed by hasAttribute() 
+PASS textarea.disabled: IDL set to false followed by IDL get 
+PASS textarea.disabled: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS textarea.disabled: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS textarea.disabled: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.disabled: IDL set to NaN should not throw 
+PASS textarea.disabled: IDL set to NaN followed by hasAttribute() 
+PASS textarea.disabled: IDL set to NaN followed by IDL get 
+PASS textarea.disabled: IDL set to Infinity should not throw 
+PASS textarea.disabled: IDL set to Infinity followed by hasAttribute() 
+PASS textarea.disabled: IDL set to Infinity followed by IDL get 
+PASS textarea.disabled: IDL set to -Infinity should not throw 
+PASS textarea.disabled: IDL set to -Infinity followed by hasAttribute() 
+PASS textarea.disabled: IDL set to -Infinity followed by IDL get 
+PASS textarea.disabled: IDL set to &quot;\0&quot; should not throw 
+PASS textarea.disabled: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS textarea.disabled: IDL set to &quot;\0&quot; followed by IDL get 
+PASS textarea.disabled: IDL set to object &quot;test-toString&quot; should not throw 
+PASS textarea.disabled: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS textarea.disabled: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.disabled: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS textarea.disabled: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS textarea.disabled: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+FAIL textarea.inputMode: typeof IDL attribute assert_equals: expected &quot;string&quot; but got &quot;undefined&quot;
+FAIL textarea.inputMode: IDL get with DOM attribute unset assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to undefined followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to undefined followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to 7 followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to 7 followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to 1.5 followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to 1.5 followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to true followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to true followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to false followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to false followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to object &quot;[object Object]&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to NaN followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to NaN followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to Infinity followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to Infinity followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to -Infinity followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to -Infinity followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;\0&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to null followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to null followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to object &quot;test-toString&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;verbatim&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;verbatim&quot; followed by IDL get assert_equals: expected (string) &quot;verbatim&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;xverbatim&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;xverbatim&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;verbatim\0&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;verbatim\0&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;erbatim&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;erbatim&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;VERBATIM&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;VERBATIM&quot; followed by IDL get assert_equals: expected (string) &quot;verbatim&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;latin&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;latin&quot; followed by IDL get assert_equals: expected (string) &quot;latin&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;xlatin&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;xlatin&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;latin\0&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;latin\0&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;atin&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;atin&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;LATIN&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;LATIN&quot; followed by IDL get assert_equals: expected (string) &quot;latin&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;latin-name&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;latin-name&quot; followed by IDL get assert_equals: expected (string) &quot;latin-name&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;xlatin-name&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;xlatin-name&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;latin-name\0&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;latin-name\0&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;atin-name&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;atin-name&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;LATIN-NAME&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;LATIN-NAME&quot; followed by IDL get assert_equals: expected (string) &quot;latin-name&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;latin-prose&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;latin-prose&quot; followed by IDL get assert_equals: expected (string) &quot;latin-prose&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;xlatin-prose&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;xlatin-prose&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;latin-prose\0&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;latin-prose\0&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;atin-prose&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;atin-prose&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;LATIN-PROSE&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;LATIN-PROSE&quot; followed by IDL get assert_equals: expected (string) &quot;latin-prose&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;full-width-latin&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;full-width-latin&quot; followed by IDL get assert_equals: expected (string) &quot;full-width-latin&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;xfull-width-latin&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;xfull-width-latin&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;full-width-latin\0&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;full-width-latin\0&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;ull-width-latin&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;ull-width-latin&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;FULL-WIDTH-LATIN&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;FULL-WIDTH-LATIN&quot; followed by IDL get assert_equals: expected (string) &quot;full-width-latin&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;kana&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;kana&quot; followed by IDL get assert_equals: expected (string) &quot;kana&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;xkana&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;xkana&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;kana\0&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;kana\0&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;ana&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;ana&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;KANA&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;KANA&quot; followed by IDL get assert_equals: expected (string) &quot;kana&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;katakana&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;katakana&quot; followed by IDL get assert_equals: expected (string) &quot;katakana&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;xkatakana&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;xkatakana&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;katakana\0&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;katakana\0&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;atakana&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;atakana&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;KATAKANA&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;KATAKANA&quot; followed by IDL get assert_equals: expected (string) &quot;katakana&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;numeric&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;numeric&quot; followed by IDL get assert_equals: expected (string) &quot;numeric&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;xnumeric&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;xnumeric&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;numeric\0&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;numeric\0&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;umeric&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;umeric&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;NUMERIC&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;NUMERIC&quot; followed by IDL get assert_equals: expected (string) &quot;numeric&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;tel&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;tel&quot; followed by IDL get assert_equals: expected (string) &quot;tel&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;xtel&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;xtel&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;tel\0&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;tel\0&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;el&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;el&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;TEL&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;TEL&quot; followed by IDL get assert_equals: expected (string) &quot;tel&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;email&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;email&quot; followed by IDL get assert_equals: expected (string) &quot;email&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;xemail&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;xemail&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;email\0&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;email\0&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;mail&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;mail&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;EMAIL&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;EMAIL&quot; followed by IDL get assert_equals: expected (string) &quot;email&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;url&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;url&quot; followed by IDL get assert_equals: expected (string) &quot;url&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;xurl&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;xurl&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;url\0&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;url\0&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;rl&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;rl&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: setAttribute() to &quot;URL&quot; followed by getAttribute() 
+FAIL textarea.inputMode: setAttribute() to &quot;URL&quot; followed by IDL get assert_equals: expected (string) &quot;url&quot; but got (undefined) undefined
+PASS textarea.inputMode: IDL set to &quot;&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;&quot; followed by getAttribute() assert_equals: expected &quot;&quot; but got &quot;URL&quot;
+PASS textarea.inputMode: IDL set to &quot;&quot; followed by IDL get 
+PASS textarea.inputMode: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() assert_equals: expected &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot;
+PASS textarea.inputMode: IDL set to undefined should not throw 
+FAIL textarea.inputMode: IDL set to undefined followed by getAttribute() assert_equals: expected &quot;undefined&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to undefined followed by IDL get assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+PASS textarea.inputMode: IDL set to 7 should not throw 
+FAIL textarea.inputMode: IDL set to 7 followed by getAttribute() assert_equals: expected &quot;7&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to 7 followed by IDL get assert_equals: expected (string) &quot;&quot; but got (number) 7
+PASS textarea.inputMode: IDL set to 1.5 should not throw 
+FAIL textarea.inputMode: IDL set to 1.5 followed by getAttribute() assert_equals: expected &quot;1.5&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to 1.5 followed by IDL get assert_equals: expected (string) &quot;&quot; but got (number) 1.5
+PASS textarea.inputMode: IDL set to true should not throw 
+FAIL textarea.inputMode: IDL set to true followed by getAttribute() assert_equals: expected &quot;true&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to true followed by IDL get assert_equals: expected (string) &quot;&quot; but got (boolean) true
+PASS textarea.inputMode: IDL set to false should not throw 
+FAIL textarea.inputMode: IDL set to false followed by getAttribute() assert_equals: expected &quot;false&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to false followed by IDL get assert_equals: expected (string) &quot;&quot; but got (boolean) false
+PASS textarea.inputMode: IDL set to object &quot;[object Object]&quot; should not throw 
+FAIL textarea.inputMode: IDL set to object &quot;[object Object]&quot; followed by getAttribute() assert_equals: expected &quot;[object Object]&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to object &quot;[object Object]&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (object) object &quot;[object Object]&quot;
+PASS textarea.inputMode: IDL set to NaN should not throw 
+FAIL textarea.inputMode: IDL set to NaN followed by getAttribute() assert_equals: expected &quot;NaN&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to NaN followed by IDL get assert_equals: expected (string) &quot;&quot; but got (number) NaN
+PASS textarea.inputMode: IDL set to Infinity should not throw 
+FAIL textarea.inputMode: IDL set to Infinity followed by getAttribute() assert_equals: expected &quot;Infinity&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to Infinity followed by IDL get assert_equals: expected (string) &quot;&quot; but got (number) Infinity
+PASS textarea.inputMode: IDL set to -Infinity should not throw 
+FAIL textarea.inputMode: IDL set to -Infinity followed by getAttribute() assert_equals: expected &quot;-Infinity&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to -Infinity followed by IDL get assert_equals: expected (string) &quot;&quot; but got (number) -Infinity
+PASS textarea.inputMode: IDL set to &quot;\0&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;\0&quot; followed by getAttribute() assert_equals: expected &quot;\0&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;\0&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;\0&quot;
+PASS textarea.inputMode: IDL set to null should not throw 
+FAIL textarea.inputMode: IDL set to null followed by IDL get assert_equals: expected (string) &quot;&quot; but got (object) null
+PASS textarea.inputMode: IDL set to object &quot;test-toString&quot; should not throw 
+FAIL textarea.inputMode: IDL set to object &quot;test-toString&quot; followed by getAttribute() assert_equals: expected &quot;test-toString&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to object &quot;test-toString&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (object) object &quot;test-toString&quot;
+PASS textarea.inputMode: IDL set to object &quot;test-valueOf&quot; should not throw 
+FAIL textarea.inputMode: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() assert_equals: expected &quot;test-valueOf&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to object &quot;test-valueOf&quot; followed by IDL get assert_equals: expected (string) &quot;&quot; but got (object) object &quot;test-valueOf&quot;
+PASS textarea.inputMode: IDL set to &quot;verbatim&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;verbatim&quot; followed by getAttribute() assert_equals: expected &quot;verbatim&quot; but got &quot;URL&quot;
+PASS textarea.inputMode: IDL set to &quot;verbatim&quot; followed by IDL get 
+PASS textarea.inputMode: IDL set to &quot;xverbatim&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;xverbatim&quot; followed by getAttribute() assert_equals: expected &quot;xverbatim&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;xverbatim&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;xverbatim&quot;
+PASS textarea.inputMode: IDL set to &quot;verbatim\0&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;verbatim\0&quot; followed by getAttribute() assert_equals: expected &quot;verbatim\0&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;verbatim\0&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;verbatim\0&quot;
+PASS textarea.inputMode: IDL set to &quot;erbatim&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;erbatim&quot; followed by getAttribute() assert_equals: expected &quot;erbatim&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;erbatim&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;erbatim&quot;
+PASS textarea.inputMode: IDL set to &quot;VERBATIM&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;VERBATIM&quot; followed by getAttribute() assert_equals: expected &quot;VERBATIM&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;VERBATIM&quot; followed by IDL get assert_equals: expected &quot;verbatim&quot; but got &quot;VERBATIM&quot;
+PASS textarea.inputMode: IDL set to &quot;latin&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;latin&quot; followed by getAttribute() assert_equals: expected &quot;latin&quot; but got &quot;URL&quot;
+PASS textarea.inputMode: IDL set to &quot;latin&quot; followed by IDL get 
+PASS textarea.inputMode: IDL set to &quot;xlatin&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;xlatin&quot; followed by getAttribute() assert_equals: expected &quot;xlatin&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;xlatin&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;xlatin&quot;
+PASS textarea.inputMode: IDL set to &quot;latin\0&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;latin\0&quot; followed by getAttribute() assert_equals: expected &quot;latin\0&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;latin\0&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;latin\0&quot;
+PASS textarea.inputMode: IDL set to &quot;atin&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;atin&quot; followed by getAttribute() assert_equals: expected &quot;atin&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;atin&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;atin&quot;
+PASS textarea.inputMode: IDL set to &quot;LATIN&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;LATIN&quot; followed by getAttribute() assert_equals: expected &quot;LATIN&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;LATIN&quot; followed by IDL get assert_equals: expected &quot;latin&quot; but got &quot;LATIN&quot;
+PASS textarea.inputMode: IDL set to &quot;latin-name&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;latin-name&quot; followed by getAttribute() assert_equals: expected &quot;latin-name&quot; but got &quot;URL&quot;
+PASS textarea.inputMode: IDL set to &quot;latin-name&quot; followed by IDL get 
+PASS textarea.inputMode: IDL set to &quot;xlatin-name&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;xlatin-name&quot; followed by getAttribute() assert_equals: expected &quot;xlatin-name&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;xlatin-name&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;xlatin-name&quot;
+PASS textarea.inputMode: IDL set to &quot;latin-name\0&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;latin-name\0&quot; followed by getAttribute() assert_equals: expected &quot;latin-name\0&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;latin-name\0&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;latin-name\0&quot;
+PASS textarea.inputMode: IDL set to &quot;atin-name&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;atin-name&quot; followed by getAttribute() assert_equals: expected &quot;atin-name&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;atin-name&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;atin-name&quot;
+PASS textarea.inputMode: IDL set to &quot;LATIN-NAME&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;LATIN-NAME&quot; followed by getAttribute() assert_equals: expected &quot;LATIN-NAME&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;LATIN-NAME&quot; followed by IDL get assert_equals: expected &quot;latin-name&quot; but got &quot;LATIN-NAME&quot;
+PASS textarea.inputMode: IDL set to &quot;latin-prose&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;latin-prose&quot; followed by getAttribute() assert_equals: expected &quot;latin-prose&quot; but got &quot;URL&quot;
+PASS textarea.inputMode: IDL set to &quot;latin-prose&quot; followed by IDL get 
+PASS textarea.inputMode: IDL set to &quot;xlatin-prose&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;xlatin-prose&quot; followed by getAttribute() assert_equals: expected &quot;xlatin-prose&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;xlatin-prose&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;xlatin-prose&quot;
+PASS textarea.inputMode: IDL set to &quot;latin-prose\0&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;latin-prose\0&quot; followed by getAttribute() assert_equals: expected &quot;latin-prose\0&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;latin-prose\0&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;latin-prose\0&quot;
+PASS textarea.inputMode: IDL set to &quot;atin-prose&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;atin-prose&quot; followed by getAttribute() assert_equals: expected &quot;atin-prose&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;atin-prose&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;atin-prose&quot;
+PASS textarea.inputMode: IDL set to &quot;LATIN-PROSE&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;LATIN-PROSE&quot; followed by getAttribute() assert_equals: expected &quot;LATIN-PROSE&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;LATIN-PROSE&quot; followed by IDL get assert_equals: expected &quot;latin-prose&quot; but got &quot;LATIN-PROSE&quot;
+PASS textarea.inputMode: IDL set to &quot;full-width-latin&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;full-width-latin&quot; followed by getAttribute() assert_equals: expected &quot;full-width-latin&quot; but got &quot;URL&quot;
+PASS textarea.inputMode: IDL set to &quot;full-width-latin&quot; followed by IDL get 
+PASS textarea.inputMode: IDL set to &quot;xfull-width-latin&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;xfull-width-latin&quot; followed by getAttribute() assert_equals: expected &quot;xfull-width-latin&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;xfull-width-latin&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;xfull-width-latin&quot;
+PASS textarea.inputMode: IDL set to &quot;full-width-latin\0&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;full-width-latin\0&quot; followed by getAttribute() assert_equals: expected &quot;full-width-latin\0&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;full-width-latin\0&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;full-width-latin\0&quot;
+PASS textarea.inputMode: IDL set to &quot;ull-width-latin&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;ull-width-latin&quot; followed by getAttribute() assert_equals: expected &quot;ull-width-latin&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;ull-width-latin&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;ull-width-latin&quot;
+PASS textarea.inputMode: IDL set to &quot;FULL-WIDTH-LATIN&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;FULL-WIDTH-LATIN&quot; followed by getAttribute() assert_equals: expected &quot;FULL-WIDTH-LATIN&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;FULL-WIDTH-LATIN&quot; followed by IDL get assert_equals: expected &quot;full-width-latin&quot; but got &quot;FULL-WIDTH-LATIN&quot;
+PASS textarea.inputMode: IDL set to &quot;kana&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;kana&quot; followed by getAttribute() assert_equals: expected &quot;kana&quot; but got &quot;URL&quot;
+PASS textarea.inputMode: IDL set to &quot;kana&quot; followed by IDL get 
+PASS textarea.inputMode: IDL set to &quot;xkana&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;xkana&quot; followed by getAttribute() assert_equals: expected &quot;xkana&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;xkana&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;xkana&quot;
+PASS textarea.inputMode: IDL set to &quot;kana\0&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;kana\0&quot; followed by getAttribute() assert_equals: expected &quot;kana\0&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;kana\0&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;kana\0&quot;
+PASS textarea.inputMode: IDL set to &quot;ana&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;ana&quot; followed by getAttribute() assert_equals: expected &quot;ana&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;ana&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;ana&quot;
+PASS textarea.inputMode: IDL set to &quot;KANA&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;KANA&quot; followed by getAttribute() assert_equals: expected &quot;KANA&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;KANA&quot; followed by IDL get assert_equals: expected &quot;kana&quot; but got &quot;KANA&quot;
+PASS textarea.inputMode: IDL set to &quot;katakana&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;katakana&quot; followed by getAttribute() assert_equals: expected &quot;katakana&quot; but got &quot;URL&quot;
+PASS textarea.inputMode: IDL set to &quot;katakana&quot; followed by IDL get 
+PASS textarea.inputMode: IDL set to &quot;xkatakana&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;xkatakana&quot; followed by getAttribute() assert_equals: expected &quot;xkatakana&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;xkatakana&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;xkatakana&quot;
+PASS textarea.inputMode: IDL set to &quot;katakana\0&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;katakana\0&quot; followed by getAttribute() assert_equals: expected &quot;katakana\0&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;katakana\0&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;katakana\0&quot;
+PASS textarea.inputMode: IDL set to &quot;atakana&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;atakana&quot; followed by getAttribute() assert_equals: expected &quot;atakana&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;atakana&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;atakana&quot;
+PASS textarea.inputMode: IDL set to &quot;KATAKANA&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;KATAKANA&quot; followed by getAttribute() assert_equals: expected &quot;KATAKANA&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;KATAKANA&quot; followed by IDL get assert_equals: expected &quot;katakana&quot; but got &quot;KATAKANA&quot;
+PASS textarea.inputMode: IDL set to &quot;numeric&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;numeric&quot; followed by getAttribute() assert_equals: expected &quot;numeric&quot; but got &quot;URL&quot;
+PASS textarea.inputMode: IDL set to &quot;numeric&quot; followed by IDL get 
+PASS textarea.inputMode: IDL set to &quot;xnumeric&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;xnumeric&quot; followed by getAttribute() assert_equals: expected &quot;xnumeric&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;xnumeric&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;xnumeric&quot;
+PASS textarea.inputMode: IDL set to &quot;numeric\0&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;numeric\0&quot; followed by getAttribute() assert_equals: expected &quot;numeric\0&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;numeric\0&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;numeric\0&quot;
+PASS textarea.inputMode: IDL set to &quot;umeric&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;umeric&quot; followed by getAttribute() assert_equals: expected &quot;umeric&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;umeric&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;umeric&quot;
+PASS textarea.inputMode: IDL set to &quot;NUMERIC&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;NUMERIC&quot; followed by getAttribute() assert_equals: expected &quot;NUMERIC&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;NUMERIC&quot; followed by IDL get assert_equals: expected &quot;numeric&quot; but got &quot;NUMERIC&quot;
+PASS textarea.inputMode: IDL set to &quot;tel&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;tel&quot; followed by getAttribute() assert_equals: expected &quot;tel&quot; but got &quot;URL&quot;
+PASS textarea.inputMode: IDL set to &quot;tel&quot; followed by IDL get 
+PASS textarea.inputMode: IDL set to &quot;xtel&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;xtel&quot; followed by getAttribute() assert_equals: expected &quot;xtel&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;xtel&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;xtel&quot;
+PASS textarea.inputMode: IDL set to &quot;tel\0&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;tel\0&quot; followed by getAttribute() assert_equals: expected &quot;tel\0&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;tel\0&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;tel\0&quot;
+PASS textarea.inputMode: IDL set to &quot;el&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;el&quot; followed by getAttribute() assert_equals: expected &quot;el&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;el&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;el&quot;
+PASS textarea.inputMode: IDL set to &quot;TEL&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;TEL&quot; followed by getAttribute() assert_equals: expected &quot;TEL&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;TEL&quot; followed by IDL get assert_equals: expected &quot;tel&quot; but got &quot;TEL&quot;
+PASS textarea.inputMode: IDL set to &quot;email&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;email&quot; followed by getAttribute() assert_equals: expected &quot;email&quot; but got &quot;URL&quot;
+PASS textarea.inputMode: IDL set to &quot;email&quot; followed by IDL get 
+PASS textarea.inputMode: IDL set to &quot;xemail&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;xemail&quot; followed by getAttribute() assert_equals: expected &quot;xemail&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;xemail&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;xemail&quot;
+PASS textarea.inputMode: IDL set to &quot;email\0&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;email\0&quot; followed by getAttribute() assert_equals: expected &quot;email\0&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;email\0&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;email\0&quot;
+PASS textarea.inputMode: IDL set to &quot;mail&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;mail&quot; followed by getAttribute() assert_equals: expected &quot;mail&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;mail&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;mail&quot;
+PASS textarea.inputMode: IDL set to &quot;EMAIL&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;EMAIL&quot; followed by getAttribute() assert_equals: expected &quot;EMAIL&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;EMAIL&quot; followed by IDL get assert_equals: expected &quot;email&quot; but got &quot;EMAIL&quot;
+PASS textarea.inputMode: IDL set to &quot;url&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;url&quot; followed by getAttribute() assert_equals: expected &quot;url&quot; but got &quot;URL&quot;
+PASS textarea.inputMode: IDL set to &quot;url&quot; followed by IDL get 
+PASS textarea.inputMode: IDL set to &quot;xurl&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;xurl&quot; followed by getAttribute() assert_equals: expected &quot;xurl&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;xurl&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;xurl&quot;
+PASS textarea.inputMode: IDL set to &quot;url\0&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;url\0&quot; followed by getAttribute() assert_equals: expected &quot;url\0&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;url\0&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;url\0&quot;
+PASS textarea.inputMode: IDL set to &quot;rl&quot; should not throw 
+FAIL textarea.inputMode: IDL set to &quot;rl&quot; followed by getAttribute() assert_equals: expected &quot;rl&quot; but got &quot;URL&quot;
+FAIL textarea.inputMode: IDL set to &quot;rl&quot; followed by IDL get assert_equals: expected &quot;&quot; but got &quot;rl&quot;
+PASS textarea.inputMode: IDL set to &quot;URL&quot; should not throw 
+PASS textarea.inputMode: IDL set to &quot;URL&quot; followed by getAttribute() 
+FAIL textarea.inputMode: IDL set to &quot;URL&quot; followed by IDL get assert_equals: expected &quot;url&quot; but got &quot;URL&quot;
+PASS textarea.maxLength: typeof IDL attribute 
+PASS textarea.maxLength: IDL get with DOM attribute unset 
+PASS textarea.maxLength: setAttribute() to -2147483649 followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to -2147483649 followed by IDL get 
+PASS textarea.maxLength: setAttribute() to -2147483648 followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to -2147483648 followed by IDL get 
+PASS textarea.maxLength: setAttribute() to -36 followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to -36 followed by IDL get 
+PASS textarea.maxLength: setAttribute() to -1 followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to -1 followed by IDL get 
+PASS textarea.maxLength: setAttribute() to -0 followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to -0 followed by IDL get 
+PASS textarea.maxLength: setAttribute() to 0 followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to 0 followed by IDL get 
+PASS textarea.maxLength: setAttribute() to 1 followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to 1 followed by IDL get 
+PASS textarea.maxLength: setAttribute() to 2147483647 followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to 2147483647 followed by IDL get 
+PASS textarea.maxLength: setAttribute() to 2147483648 followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to 2147483648 followed by IDL get 
+PASS textarea.maxLength: setAttribute() to 4294967295 followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to 4294967295 followed by IDL get 
+PASS textarea.maxLength: setAttribute() to 4294967296 followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to 4294967296 followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot;&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot;-1&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot;-1&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot;-0&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot;-0&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot;0&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot;0&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot;1&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot;1&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot;\t7&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot;\t7&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot;\v7&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot;\v7&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot;\f7&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot;\f7&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot;7&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot;7&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot;\n7&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot;\n7&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot;\r7&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot;\r7&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot;
7&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot;
7&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot;
7&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot;
7&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot;᠎7&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot;᠎7&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to undefined followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to undefined followed by IDL get 
+PASS textarea.maxLength: setAttribute() to 1.5 followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to 1.5 followed by IDL get 
+PASS textarea.maxLength: setAttribute() to true followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to true followed by IDL get 
+PASS textarea.maxLength: setAttribute() to false followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to false followed by IDL get 
+PASS textarea.maxLength: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to NaN followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to NaN followed by IDL get 
+PASS textarea.maxLength: setAttribute() to Infinity followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to Infinity followed by IDL get 
+PASS textarea.maxLength: setAttribute() to -Infinity followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to -Infinity followed by IDL get 
+PASS textarea.maxLength: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to object &quot;2&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to object &quot;2&quot; followed by IDL get 
+PASS textarea.maxLength: setAttribute() to object &quot;3&quot; followed by getAttribute() 
+PASS textarea.maxLength: setAttribute() to object &quot;3&quot; followed by IDL get 
+PASS textarea.maxLength: IDL set to -2147483648 must throw INDEX_SIZE_ERR 
+PASS textarea.maxLength: IDL set to -36 must throw INDEX_SIZE_ERR 
+PASS textarea.maxLength: IDL set to -1 must throw INDEX_SIZE_ERR 
+PASS textarea.maxLength: IDL set to 0 should not throw 
+PASS textarea.maxLength: IDL set to 0 followed by getAttribute() 
+PASS textarea.maxLength: IDL set to 0 followed by IDL get 
+PASS textarea.maxLength: IDL set to 1 should not throw 
+PASS textarea.maxLength: IDL set to 1 followed by getAttribute() 
+PASS textarea.maxLength: IDL set to 1 followed by IDL get 
+PASS textarea.maxLength: IDL set to 2147483647 should not throw 
+PASS textarea.maxLength: IDL set to 2147483647 followed by getAttribute() 
+PASS textarea.maxLength: IDL set to 2147483647 followed by IDL get 
+PASS textarea.name: typeof IDL attribute 
+PASS textarea.name: IDL get with DOM attribute unset 
+PASS textarea.name: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS textarea.name: setAttribute() to &quot;&quot; followed by IDL get 
+PASS textarea.name: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS textarea.name: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS textarea.name: setAttribute() to undefined followed by getAttribute() 
+PASS textarea.name: setAttribute() to undefined followed by IDL get 
+PASS textarea.name: setAttribute() to 7 followed by getAttribute() 
+PASS textarea.name: setAttribute() to 7 followed by IDL get 
+PASS textarea.name: setAttribute() to 1.5 followed by getAttribute() 
+PASS textarea.name: setAttribute() to 1.5 followed by IDL get 
+PASS textarea.name: setAttribute() to true followed by getAttribute() 
+PASS textarea.name: setAttribute() to true followed by IDL get 
+PASS textarea.name: setAttribute() to false followed by getAttribute() 
+PASS textarea.name: setAttribute() to false followed by IDL get 
+PASS textarea.name: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS textarea.name: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.name: setAttribute() to NaN followed by getAttribute() 
+PASS textarea.name: setAttribute() to NaN followed by IDL get 
+PASS textarea.name: setAttribute() to Infinity followed by getAttribute() 
+PASS textarea.name: setAttribute() to Infinity followed by IDL get 
+PASS textarea.name: setAttribute() to -Infinity followed by getAttribute() 
+PASS textarea.name: setAttribute() to -Infinity followed by IDL get 
+PASS textarea.name: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS textarea.name: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS textarea.name: setAttribute() to null followed by getAttribute() 
+PASS textarea.name: setAttribute() to null followed by IDL get 
+PASS textarea.name: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS textarea.name: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.name: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS textarea.name: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS textarea.name: IDL set to &quot;&quot; should not throw 
+PASS textarea.name: IDL set to &quot;&quot; followed by getAttribute() 
+PASS textarea.name: IDL set to &quot;&quot; followed by IDL get 
+PASS textarea.name: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS textarea.name: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS textarea.name: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS textarea.name: IDL set to undefined should not throw 
+PASS textarea.name: IDL set to undefined followed by getAttribute() 
+PASS textarea.name: IDL set to undefined followed by IDL get 
+PASS textarea.name: IDL set to 7 should not throw 
+PASS textarea.name: IDL set to 7 followed by getAttribute() 
+PASS textarea.name: IDL set to 7 followed by IDL get 
+PASS textarea.name: IDL set to 1.5 should not throw 
+PASS textarea.name: IDL set to 1.5 followed by getAttribute() 
+PASS textarea.name: IDL set to 1.5 followed by IDL get 
+PASS textarea.name: IDL set to true should not throw 
+PASS textarea.name: IDL set to true followed by getAttribute() 
+PASS textarea.name: IDL set to true followed by IDL get 
+PASS textarea.name: IDL set to false should not throw 
+PASS textarea.name: IDL set to false followed by getAttribute() 
+PASS textarea.name: IDL set to false followed by IDL get 
+PASS textarea.name: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS textarea.name: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS textarea.name: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.name: IDL set to NaN should not throw 
+PASS textarea.name: IDL set to NaN followed by getAttribute() 
+PASS textarea.name: IDL set to NaN followed by IDL get 
+PASS textarea.name: IDL set to Infinity should not throw 
+PASS textarea.name: IDL set to Infinity followed by getAttribute() 
+PASS textarea.name: IDL set to Infinity followed by IDL get 
+PASS textarea.name: IDL set to -Infinity should not throw 
+PASS textarea.name: IDL set to -Infinity followed by getAttribute() 
+PASS textarea.name: IDL set to -Infinity followed by IDL get 
+PASS textarea.name: IDL set to &quot;\0&quot; should not throw 
+PASS textarea.name: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS textarea.name: IDL set to &quot;\0&quot; followed by IDL get 
+PASS textarea.name: IDL set to null should not throw 
+PASS textarea.name: IDL set to null followed by getAttribute() 
+PASS textarea.name: IDL set to null followed by IDL get 
+PASS textarea.name: IDL set to object &quot;test-toString&quot; should not throw 
+PASS textarea.name: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS textarea.name: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.name: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS textarea.name: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS textarea.name: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS textarea.placeholder: typeof IDL attribute 
+PASS textarea.placeholder: IDL get with DOM attribute unset 
+PASS textarea.placeholder: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS textarea.placeholder: setAttribute() to &quot;&quot; followed by IDL get 
+PASS textarea.placeholder: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS textarea.placeholder: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS textarea.placeholder: setAttribute() to undefined followed by getAttribute() 
+PASS textarea.placeholder: setAttribute() to undefined followed by IDL get 
+PASS textarea.placeholder: setAttribute() to 7 followed by getAttribute() 
+PASS textarea.placeholder: setAttribute() to 7 followed by IDL get 
+PASS textarea.placeholder: setAttribute() to 1.5 followed by getAttribute() 
+PASS textarea.placeholder: setAttribute() to 1.5 followed by IDL get 
+PASS textarea.placeholder: setAttribute() to true followed by getAttribute() 
+PASS textarea.placeholder: setAttribute() to true followed by IDL get 
+PASS textarea.placeholder: setAttribute() to false followed by getAttribute() 
+PASS textarea.placeholder: setAttribute() to false followed by IDL get 
+PASS textarea.placeholder: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS textarea.placeholder: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.placeholder: setAttribute() to NaN followed by getAttribute() 
+PASS textarea.placeholder: setAttribute() to NaN followed by IDL get 
+PASS textarea.placeholder: setAttribute() to Infinity followed by getAttribute() 
+PASS textarea.placeholder: setAttribute() to Infinity followed by IDL get 
+PASS textarea.placeholder: setAttribute() to -Infinity followed by getAttribute() 
+PASS textarea.placeholder: setAttribute() to -Infinity followed by IDL get 
+PASS textarea.placeholder: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS textarea.placeholder: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS textarea.placeholder: setAttribute() to null followed by getAttribute() 
+PASS textarea.placeholder: setAttribute() to null followed by IDL get 
+PASS textarea.placeholder: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS textarea.placeholder: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.placeholder: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS textarea.placeholder: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS textarea.placeholder: IDL set to &quot;&quot; should not throw 
+PASS textarea.placeholder: IDL set to &quot;&quot; followed by getAttribute() 
+PASS textarea.placeholder: IDL set to &quot;&quot; followed by IDL get 
+PASS textarea.placeholder: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS textarea.placeholder: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS textarea.placeholder: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS textarea.placeholder: IDL set to undefined should not throw 
+PASS textarea.placeholder: IDL set to undefined followed by getAttribute() 
+PASS textarea.placeholder: IDL set to undefined followed by IDL get 
+PASS textarea.placeholder: IDL set to 7 should not throw 
+PASS textarea.placeholder: IDL set to 7 followed by getAttribute() 
+PASS textarea.placeholder: IDL set to 7 followed by IDL get 
+PASS textarea.placeholder: IDL set to 1.5 should not throw 
+PASS textarea.placeholder: IDL set to 1.5 followed by getAttribute() 
+PASS textarea.placeholder: IDL set to 1.5 followed by IDL get 
+PASS textarea.placeholder: IDL set to true should not throw 
+PASS textarea.placeholder: IDL set to true followed by getAttribute() 
+PASS textarea.placeholder: IDL set to true followed by IDL get 
+PASS textarea.placeholder: IDL set to false should not throw 
+PASS textarea.placeholder: IDL set to false followed by getAttribute() 
+PASS textarea.placeholder: IDL set to false followed by IDL get 
+PASS textarea.placeholder: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS textarea.placeholder: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS textarea.placeholder: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.placeholder: IDL set to NaN should not throw 
+PASS textarea.placeholder: IDL set to NaN followed by getAttribute() 
+PASS textarea.placeholder: IDL set to NaN followed by IDL get 
+PASS textarea.placeholder: IDL set to Infinity should not throw 
+PASS textarea.placeholder: IDL set to Infinity followed by getAttribute() 
+PASS textarea.placeholder: IDL set to Infinity followed by IDL get 
+PASS textarea.placeholder: IDL set to -Infinity should not throw 
+PASS textarea.placeholder: IDL set to -Infinity followed by getAttribute() 
+PASS textarea.placeholder: IDL set to -Infinity followed by IDL get 
+PASS textarea.placeholder: IDL set to &quot;\0&quot; should not throw 
+PASS textarea.placeholder: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS textarea.placeholder: IDL set to &quot;\0&quot; followed by IDL get 
+PASS textarea.placeholder: IDL set to null should not throw 
+PASS textarea.placeholder: IDL set to null followed by getAttribute() 
+PASS textarea.placeholder: IDL set to null followed by IDL get 
+PASS textarea.placeholder: IDL set to object &quot;test-toString&quot; should not throw 
+PASS textarea.placeholder: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS textarea.placeholder: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.placeholder: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS textarea.placeholder: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS textarea.placeholder: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS textarea.readOnly: typeof IDL attribute 
+PASS textarea.readOnly: IDL get with DOM attribute unset 
+PASS textarea.readOnly: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS textarea.readOnly: setAttribute() to &quot;&quot; followed by IDL get 
+PASS textarea.readOnly: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS textarea.readOnly: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS textarea.readOnly: setAttribute() to undefined followed by getAttribute() 
+PASS textarea.readOnly: setAttribute() to undefined followed by IDL get 
+PASS textarea.readOnly: setAttribute() to null followed by getAttribute() 
+PASS textarea.readOnly: setAttribute() to null followed by IDL get 
+PASS textarea.readOnly: setAttribute() to 7 followed by getAttribute() 
+PASS textarea.readOnly: setAttribute() to 7 followed by IDL get 
+PASS textarea.readOnly: setAttribute() to 1.5 followed by getAttribute() 
+PASS textarea.readOnly: setAttribute() to 1.5 followed by IDL get 
+PASS textarea.readOnly: setAttribute() to true followed by getAttribute() 
+PASS textarea.readOnly: setAttribute() to true followed by IDL get 
+PASS textarea.readOnly: setAttribute() to false followed by getAttribute() 
+PASS textarea.readOnly: setAttribute() to false followed by IDL get 
+PASS textarea.readOnly: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS textarea.readOnly: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.readOnly: setAttribute() to NaN followed by getAttribute() 
+PASS textarea.readOnly: setAttribute() to NaN followed by IDL get 
+PASS textarea.readOnly: setAttribute() to Infinity followed by getAttribute() 
+PASS textarea.readOnly: setAttribute() to Infinity followed by IDL get 
+PASS textarea.readOnly: setAttribute() to -Infinity followed by getAttribute() 
+PASS textarea.readOnly: setAttribute() to -Infinity followed by IDL get 
+PASS textarea.readOnly: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS textarea.readOnly: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS textarea.readOnly: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS textarea.readOnly: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.readOnly: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS textarea.readOnly: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS textarea.readOnly: setAttribute() to &quot;readOnly&quot; followed by getAttribute() 
+PASS textarea.readOnly: setAttribute() to &quot;readOnly&quot; followed by IDL get 
+PASS textarea.readOnly: IDL set to &quot;&quot; should not throw 
+PASS textarea.readOnly: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS textarea.readOnly: IDL set to &quot;&quot; followed by IDL get 
+PASS textarea.readOnly: IDL set to &quot; foo &quot; should not throw 
+PASS textarea.readOnly: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS textarea.readOnly: IDL set to &quot; foo &quot; followed by IDL get 
+PASS textarea.readOnly: IDL set to undefined should not throw 
+PASS textarea.readOnly: IDL set to undefined followed by hasAttribute() 
+PASS textarea.readOnly: IDL set to undefined followed by IDL get 
+PASS textarea.readOnly: IDL set to null should not throw 
+PASS textarea.readOnly: IDL set to null followed by hasAttribute() 
+PASS textarea.readOnly: IDL set to null followed by IDL get 
+PASS textarea.readOnly: IDL set to 7 should not throw 
+PASS textarea.readOnly: IDL set to 7 followed by hasAttribute() 
+PASS textarea.readOnly: IDL set to 7 followed by IDL get 
+PASS textarea.readOnly: IDL set to 1.5 should not throw 
+PASS textarea.readOnly: IDL set to 1.5 followed by hasAttribute() 
+PASS textarea.readOnly: IDL set to 1.5 followed by IDL get 
+PASS textarea.readOnly: IDL set to true should not throw 
+PASS textarea.readOnly: IDL set to true followed by hasAttribute() 
+PASS textarea.readOnly: IDL set to true followed by IDL get 
+PASS textarea.readOnly: IDL set to false should not throw 
+PASS textarea.readOnly: IDL set to false followed by hasAttribute() 
+PASS textarea.readOnly: IDL set to false followed by IDL get 
+PASS textarea.readOnly: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS textarea.readOnly: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS textarea.readOnly: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.readOnly: IDL set to NaN should not throw 
+PASS textarea.readOnly: IDL set to NaN followed by hasAttribute() 
+PASS textarea.readOnly: IDL set to NaN followed by IDL get 
+PASS textarea.readOnly: IDL set to Infinity should not throw 
+PASS textarea.readOnly: IDL set to Infinity followed by hasAttribute() 
+PASS textarea.readOnly: IDL set to Infinity followed by IDL get 
+PASS textarea.readOnly: IDL set to -Infinity should not throw 
+PASS textarea.readOnly: IDL set to -Infinity followed by hasAttribute() 
+PASS textarea.readOnly: IDL set to -Infinity followed by IDL get 
+PASS textarea.readOnly: IDL set to &quot;\0&quot; should not throw 
+PASS textarea.readOnly: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS textarea.readOnly: IDL set to &quot;\0&quot; followed by IDL get 
+PASS textarea.readOnly: IDL set to object &quot;test-toString&quot; should not throw 
+PASS textarea.readOnly: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS textarea.readOnly: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.readOnly: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS textarea.readOnly: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS textarea.readOnly: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS textarea.required: typeof IDL attribute 
+PASS textarea.required: IDL get with DOM attribute unset 
+PASS textarea.required: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS textarea.required: setAttribute() to &quot;&quot; followed by IDL get 
+PASS textarea.required: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS textarea.required: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS textarea.required: setAttribute() to undefined followed by getAttribute() 
+PASS textarea.required: setAttribute() to undefined followed by IDL get 
+PASS textarea.required: setAttribute() to null followed by getAttribute() 
+PASS textarea.required: setAttribute() to null followed by IDL get 
+PASS textarea.required: setAttribute() to 7 followed by getAttribute() 
+PASS textarea.required: setAttribute() to 7 followed by IDL get 
+PASS textarea.required: setAttribute() to 1.5 followed by getAttribute() 
+PASS textarea.required: setAttribute() to 1.5 followed by IDL get 
+PASS textarea.required: setAttribute() to true followed by getAttribute() 
+PASS textarea.required: setAttribute() to true followed by IDL get 
+PASS textarea.required: setAttribute() to false followed by getAttribute() 
+PASS textarea.required: setAttribute() to false followed by IDL get 
+PASS textarea.required: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS textarea.required: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.required: setAttribute() to NaN followed by getAttribute() 
+PASS textarea.required: setAttribute() to NaN followed by IDL get 
+PASS textarea.required: setAttribute() to Infinity followed by getAttribute() 
+PASS textarea.required: setAttribute() to Infinity followed by IDL get 
+PASS textarea.required: setAttribute() to -Infinity followed by getAttribute() 
+PASS textarea.required: setAttribute() to -Infinity followed by IDL get 
+PASS textarea.required: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS textarea.required: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS textarea.required: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS textarea.required: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.required: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS textarea.required: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS textarea.required: setAttribute() to &quot;required&quot; followed by getAttribute() 
+PASS textarea.required: setAttribute() to &quot;required&quot; followed by IDL get 
+PASS textarea.required: IDL set to &quot;&quot; should not throw 
+PASS textarea.required: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS textarea.required: IDL set to &quot;&quot; followed by IDL get 
+PASS textarea.required: IDL set to &quot; foo &quot; should not throw 
+PASS textarea.required: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS textarea.required: IDL set to &quot; foo &quot; followed by IDL get 
+PASS textarea.required: IDL set to undefined should not throw 
+PASS textarea.required: IDL set to undefined followed by hasAttribute() 
+PASS textarea.required: IDL set to undefined followed by IDL get 
+PASS textarea.required: IDL set to null should not throw 
+PASS textarea.required: IDL set to null followed by hasAttribute() 
+PASS textarea.required: IDL set to null followed by IDL get 
+PASS textarea.required: IDL set to 7 should not throw 
+PASS textarea.required: IDL set to 7 followed by hasAttribute() 
+PASS textarea.required: IDL set to 7 followed by IDL get 
+PASS textarea.required: IDL set to 1.5 should not throw 
+PASS textarea.required: IDL set to 1.5 followed by hasAttribute() 
+PASS textarea.required: IDL set to 1.5 followed by IDL get 
+PASS textarea.required: IDL set to true should not throw 
+PASS textarea.required: IDL set to true followed by hasAttribute() 
+PASS textarea.required: IDL set to true followed by IDL get 
+PASS textarea.required: IDL set to false should not throw 
+PASS textarea.required: IDL set to false followed by hasAttribute() 
+PASS textarea.required: IDL set to false followed by IDL get 
+PASS textarea.required: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS textarea.required: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS textarea.required: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.required: IDL set to NaN should not throw 
+PASS textarea.required: IDL set to NaN followed by hasAttribute() 
+PASS textarea.required: IDL set to NaN followed by IDL get 
+PASS textarea.required: IDL set to Infinity should not throw 
+PASS textarea.required: IDL set to Infinity followed by hasAttribute() 
+PASS textarea.required: IDL set to Infinity followed by IDL get 
+PASS textarea.required: IDL set to -Infinity should not throw 
+PASS textarea.required: IDL set to -Infinity followed by hasAttribute() 
+PASS textarea.required: IDL set to -Infinity followed by IDL get 
+PASS textarea.required: IDL set to &quot;\0&quot; should not throw 
+PASS textarea.required: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS textarea.required: IDL set to &quot;\0&quot; followed by IDL get 
+PASS textarea.required: IDL set to object &quot;test-toString&quot; should not throw 
+PASS textarea.required: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS textarea.required: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.required: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS textarea.required: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS textarea.required: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS textarea.rows: typeof IDL attribute 
+PASS textarea.rows: IDL get with DOM attribute unset 
+PASS textarea.rows: setAttribute() to -2147483649 followed by getAttribute() 
+PASS textarea.rows: setAttribute() to -2147483649 followed by IDL get 
+PASS textarea.rows: setAttribute() to -2147483648 followed by getAttribute() 
+PASS textarea.rows: setAttribute() to -2147483648 followed by IDL get 
+PASS textarea.rows: setAttribute() to -36 followed by getAttribute() 
+PASS textarea.rows: setAttribute() to -36 followed by IDL get 
+PASS textarea.rows: setAttribute() to -1 followed by getAttribute() 
+PASS textarea.rows: setAttribute() to -1 followed by IDL get 
+PASS textarea.rows: setAttribute() to 0 followed by getAttribute() 
+PASS textarea.rows: setAttribute() to 0 followed by IDL get 
+PASS textarea.rows: setAttribute() to 1 followed by getAttribute() 
+PASS textarea.rows: setAttribute() to 1 followed by IDL get 
+PASS textarea.rows: setAttribute() to 2147483647 followed by getAttribute() 
+PASS textarea.rows: setAttribute() to 2147483647 followed by IDL get 
+PASS textarea.rows: setAttribute() to 2147483648 followed by getAttribute() 
+PASS textarea.rows: setAttribute() to 2147483648 followed by IDL get 
+PASS textarea.rows: setAttribute() to 4294967295 followed by getAttribute() 
+PASS textarea.rows: setAttribute() to 4294967295 followed by IDL get 
+PASS textarea.rows: setAttribute() to 4294967296 followed by getAttribute() 
+PASS textarea.rows: setAttribute() to 4294967296 followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot;&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot;-1&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot;-1&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot;-0&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot;-0&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot;0&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot;0&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot;1&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot;1&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot;\t7&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot;\t7&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot;\v7&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot;\v7&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot;\f7&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot;\f7&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot;7&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot;7&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot;\n7&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot;\n7&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot;\r7&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot;\r7&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot;
7&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot;
7&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot;
7&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot;
7&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot;᠎7&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot;᠎7&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to undefined followed by getAttribute() 
+PASS textarea.rows: setAttribute() to undefined followed by IDL get 
+PASS textarea.rows: setAttribute() to 1.5 followed by getAttribute() 
+PASS textarea.rows: setAttribute() to 1.5 followed by IDL get 
+PASS textarea.rows: setAttribute() to true followed by getAttribute() 
+PASS textarea.rows: setAttribute() to true followed by IDL get 
+PASS textarea.rows: setAttribute() to false followed by getAttribute() 
+PASS textarea.rows: setAttribute() to false followed by IDL get 
+PASS textarea.rows: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to NaN followed by getAttribute() 
+PASS textarea.rows: setAttribute() to NaN followed by IDL get 
+PASS textarea.rows: setAttribute() to Infinity followed by getAttribute() 
+PASS textarea.rows: setAttribute() to Infinity followed by IDL get 
+PASS textarea.rows: setAttribute() to -Infinity followed by getAttribute() 
+PASS textarea.rows: setAttribute() to -Infinity followed by IDL get 
+PASS textarea.rows: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to object &quot;2&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to object &quot;2&quot; followed by IDL get 
+PASS textarea.rows: setAttribute() to object &quot;3&quot; followed by getAttribute() 
+PASS textarea.rows: setAttribute() to object &quot;3&quot; followed by IDL get 
+FAIL textarea.rows: IDL set to 0 must throw INDEX_SIZE_ERR assert_throws: function &quot;function () {
+                idlObj[idlName] = idlTests[...&quot; did not throw
+PASS textarea.rows: IDL set to 1 should not throw 
+PASS textarea.rows: IDL set to 1 followed by getAttribute() 
+PASS textarea.rows: IDL set to 1 followed by IDL get 
+PASS textarea.rows: IDL set to 2147483647 should not throw 
+PASS textarea.rows: IDL set to 2147483647 followed by getAttribute() 
+PASS textarea.rows: IDL set to 2147483647 followed by IDL get 
+PASS textarea.rows: IDL set to 2147483648 should not throw 
+PASS textarea.rows: IDL set to 2147483648 followed by getAttribute() 
+PASS textarea.rows: IDL set to 2147483648 followed by IDL get 
+PASS textarea.rows: IDL set to 4294967295 should not throw 
+PASS textarea.rows: IDL set to 4294967295 followed by getAttribute() 
+PASS textarea.rows: IDL set to 4294967295 followed by IDL get 
+PASS textarea.wrap: typeof IDL attribute 
+PASS textarea.wrap: IDL get with DOM attribute unset 
+PASS textarea.wrap: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS textarea.wrap: setAttribute() to &quot;&quot; followed by IDL get 
+PASS textarea.wrap: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS textarea.wrap: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS textarea.wrap: setAttribute() to undefined followed by getAttribute() 
+PASS textarea.wrap: setAttribute() to undefined followed by IDL get 
+PASS textarea.wrap: setAttribute() to 7 followed by getAttribute() 
+PASS textarea.wrap: setAttribute() to 7 followed by IDL get 
+PASS textarea.wrap: setAttribute() to 1.5 followed by getAttribute() 
+PASS textarea.wrap: setAttribute() to 1.5 followed by IDL get 
+PASS textarea.wrap: setAttribute() to true followed by getAttribute() 
+PASS textarea.wrap: setAttribute() to true followed by IDL get 
+PASS textarea.wrap: setAttribute() to false followed by getAttribute() 
+PASS textarea.wrap: setAttribute() to false followed by IDL get 
+PASS textarea.wrap: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS textarea.wrap: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.wrap: setAttribute() to NaN followed by getAttribute() 
+PASS textarea.wrap: setAttribute() to NaN followed by IDL get 
+PASS textarea.wrap: setAttribute() to Infinity followed by getAttribute() 
+PASS textarea.wrap: setAttribute() to Infinity followed by IDL get 
+PASS textarea.wrap: setAttribute() to -Infinity followed by getAttribute() 
+PASS textarea.wrap: setAttribute() to -Infinity followed by IDL get 
+PASS textarea.wrap: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS textarea.wrap: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS textarea.wrap: setAttribute() to null followed by getAttribute() 
+PASS textarea.wrap: setAttribute() to null followed by IDL get 
+PASS textarea.wrap: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS textarea.wrap: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.wrap: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS textarea.wrap: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS textarea.wrap: IDL set to &quot;&quot; should not throw 
+PASS textarea.wrap: IDL set to &quot;&quot; followed by getAttribute() 
+PASS textarea.wrap: IDL set to &quot;&quot; followed by IDL get 
+PASS textarea.wrap: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS textarea.wrap: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS textarea.wrap: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS textarea.wrap: IDL set to undefined should not throw 
+PASS textarea.wrap: IDL set to undefined followed by getAttribute() 
+PASS textarea.wrap: IDL set to undefined followed by IDL get 
+PASS textarea.wrap: IDL set to 7 should not throw 
+PASS textarea.wrap: IDL set to 7 followed by getAttribute() 
+PASS textarea.wrap: IDL set to 7 followed by IDL get 
+PASS textarea.wrap: IDL set to 1.5 should not throw 
+PASS textarea.wrap: IDL set to 1.5 followed by getAttribute() 
+PASS textarea.wrap: IDL set to 1.5 followed by IDL get 
+PASS textarea.wrap: IDL set to true should not throw 
+PASS textarea.wrap: IDL set to true followed by getAttribute() 
+PASS textarea.wrap: IDL set to true followed by IDL get 
+PASS textarea.wrap: IDL set to false should not throw 
+PASS textarea.wrap: IDL set to false followed by getAttribute() 
+PASS textarea.wrap: IDL set to false followed by IDL get 
+PASS textarea.wrap: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS textarea.wrap: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS textarea.wrap: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS textarea.wrap: IDL set to NaN should not throw 
+PASS textarea.wrap: IDL set to NaN followed by getAttribute() 
+PASS textarea.wrap: IDL set to NaN followed by IDL get 
+PASS textarea.wrap: IDL set to Infinity should not throw 
+PASS textarea.wrap: IDL set to Infinity followed by getAttribute() 
+PASS textarea.wrap: IDL set to Infinity followed by IDL get 
+PASS textarea.wrap: IDL set to -Infinity should not throw 
+PASS textarea.wrap: IDL set to -Infinity followed by getAttribute() 
+PASS textarea.wrap: IDL set to -Infinity followed by IDL get 
+PASS textarea.wrap: IDL set to &quot;\0&quot; should not throw 
+PASS textarea.wrap: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS textarea.wrap: IDL set to &quot;\0&quot; followed by IDL get 
+PASS textarea.wrap: IDL set to null should not throw 
+PASS textarea.wrap: IDL set to null followed by getAttribute() 
+PASS textarea.wrap: IDL set to null followed by IDL get 
+PASS textarea.wrap: IDL set to object &quot;test-toString&quot; should not throw 
+PASS textarea.wrap: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS textarea.wrap: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS textarea.wrap: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS textarea.wrap: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS textarea.wrap: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS keygen.title: typeof IDL attribute 
+PASS keygen.title: IDL get with DOM attribute unset 
+PASS keygen.title: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS keygen.title: setAttribute() to &quot;&quot; followed by IDL get 
+PASS keygen.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS keygen.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS keygen.title: setAttribute() to undefined followed by getAttribute() 
+PASS keygen.title: setAttribute() to undefined followed by IDL get 
+PASS keygen.title: setAttribute() to 7 followed by getAttribute() 
+PASS keygen.title: setAttribute() to 7 followed by IDL get 
+PASS keygen.title: setAttribute() to 1.5 followed by getAttribute() 
+PASS keygen.title: setAttribute() to 1.5 followed by IDL get 
+PASS keygen.title: setAttribute() to true followed by getAttribute() 
+PASS keygen.title: setAttribute() to true followed by IDL get 
+PASS keygen.title: setAttribute() to false followed by getAttribute() 
+PASS keygen.title: setAttribute() to false followed by IDL get 
+PASS keygen.title: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS keygen.title: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS keygen.title: setAttribute() to NaN followed by getAttribute() 
+PASS keygen.title: setAttribute() to NaN followed by IDL get 
+PASS keygen.title: setAttribute() to Infinity followed by getAttribute() 
+PASS keygen.title: setAttribute() to Infinity followed by IDL get 
+PASS keygen.title: setAttribute() to -Infinity followed by getAttribute() 
+PASS keygen.title: setAttribute() to -Infinity followed by IDL get 
+PASS keygen.title: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS keygen.title: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS keygen.title: setAttribute() to null followed by getAttribute() 
+PASS keygen.title: setAttribute() to null followed by IDL get 
+PASS keygen.title: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS keygen.title: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS keygen.title: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS keygen.title: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS keygen.title: IDL set to &quot;&quot; should not throw 
+PASS keygen.title: IDL set to &quot;&quot; followed by getAttribute() 
+PASS keygen.title: IDL set to &quot;&quot; followed by IDL get 
+PASS keygen.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS keygen.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS keygen.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS keygen.title: IDL set to undefined should not throw 
+PASS keygen.title: IDL set to undefined followed by getAttribute() 
+PASS keygen.title: IDL set to undefined followed by IDL get 
+PASS keygen.title: IDL set to 7 should not throw 
+PASS keygen.title: IDL set to 7 followed by getAttribute() 
+PASS keygen.title: IDL set to 7 followed by IDL get 
+PASS keygen.title: IDL set to 1.5 should not throw 
+PASS keygen.title: IDL set to 1.5 followed by getAttribute() 
+PASS keygen.title: IDL set to 1.5 followed by IDL get 
+PASS keygen.title: IDL set to true should not throw 
+PASS keygen.title: IDL set to true followed by getAttribute() 
+PASS keygen.title: IDL set to true followed by IDL get 
+PASS keygen.title: IDL set to false should not throw 
+PASS keygen.title: IDL set to false followed by getAttribute() 
+PASS keygen.title: IDL set to false followed by IDL get 
+PASS keygen.title: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS keygen.title: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS keygen.title: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS keygen.title: IDL set to NaN should not throw 
+PASS keygen.title: IDL set to NaN followed by getAttribute() 
+PASS keygen.title: IDL set to NaN followed by IDL get 
+PASS keygen.title: IDL set to Infinity should not throw 
+PASS keygen.title: IDL set to Infinity followed by getAttribute() 
+PASS keygen.title: IDL set to Infinity followed by IDL get 
+PASS keygen.title: IDL set to -Infinity should not throw 
+PASS keygen.title: IDL set to -Infinity followed by getAttribute() 
+PASS keygen.title: IDL set to -Infinity followed by IDL get 
+PASS keygen.title: IDL set to &quot;\0&quot; should not throw 
+PASS keygen.title: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS keygen.title: IDL set to &quot;\0&quot; followed by IDL get 
+PASS keygen.title: IDL set to null should not throw 
+PASS keygen.title: IDL set to null followed by getAttribute() 
+PASS keygen.title: IDL set to null followed by IDL get 
+PASS keygen.title: IDL set to object &quot;test-toString&quot; should not throw 
+PASS keygen.title: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS keygen.title: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS keygen.title: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS keygen.title: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS keygen.title: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS keygen.lang: typeof IDL attribute 
+PASS keygen.lang: IDL get with DOM attribute unset 
+PASS keygen.lang: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS keygen.lang: setAttribute() to &quot;&quot; followed by IDL get 
+PASS keygen.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS keygen.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS keygen.lang: setAttribute() to undefined followed by getAttribute() 
+PASS keygen.lang: setAttribute() to undefined followed by IDL get 
+PASS keygen.lang: setAttribute() to 7 followed by getAttribute() 
+PASS keygen.lang: setAttribute() to 7 followed by IDL get 
+PASS keygen.lang: setAttribute() to 1.5 followed by getAttribute() 
+PASS keygen.lang: setAttribute() to 1.5 followed by IDL get 
+PASS keygen.lang: setAttribute() to true followed by getAttribute() 
+PASS keygen.lang: setAttribute() to true followed by IDL get 
+PASS keygen.lang: setAttribute() to false followed by getAttribute() 
+PASS keygen.lang: setAttribute() to false followed by IDL get 
+PASS keygen.lang: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS keygen.lang: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS keygen.lang: setAttribute() to NaN followed by getAttribute() 
+PASS keygen.lang: setAttribute() to NaN followed by IDL get 
+PASS keygen.lang: setAttribute() to Infinity followed by getAttribute() 
+PASS keygen.lang: setAttribute() to Infinity followed by IDL get 
+PASS keygen.lang: setAttribute() to -Infinity followed by getAttribute() 
+PASS keygen.lang: setAttribute() to -Infinity followed by IDL get 
+PASS keygen.lang: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS keygen.lang: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS keygen.lang: setAttribute() to null followed by getAttribute() 
+PASS keygen.lang: setAttribute() to null followed by IDL get 
+PASS keygen.lang: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS keygen.lang: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS keygen.lang: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS keygen.lang: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS keygen.lang: IDL set to &quot;&quot; should not throw 
+PASS keygen.lang: IDL set to &quot;&quot; followed by getAttribute() 
+PASS keygen.lang: IDL set to &quot;&quot; followed by IDL get 
+PASS keygen.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS keygen.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS keygen.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS keygen.lang: IDL set to undefined should not throw 
+PASS keygen.lang: IDL set to undefined followed by getAttribute() 
+PASS keygen.lang: IDL set to undefined followed by IDL get 
+PASS keygen.lang: IDL set to 7 should not throw 
+PASS keygen.lang: IDL set to 7 followed by getAttribute() 
+PASS keygen.lang: IDL set to 7 followed by IDL get 
+PASS keygen.lang: IDL set to 1.5 should not throw 
+PASS keygen.lang: IDL set to 1.5 followed by getAttribute() 
+PASS keygen.lang: IDL set to 1.5 followed by IDL get 
+PASS keygen.lang: IDL set to true should not throw 
+PASS keygen.lang: IDL set to true followed by getAttribute() 
+PASS keygen.lang: IDL set to true followed by IDL get 
+PASS keygen.lang: IDL set to false should not throw 
+PASS keygen.lang: IDL set to false followed by getAttribute() 
+PASS keygen.lang: IDL set to false followed by IDL get 
+PASS keygen.lang: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS keygen.lang: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS keygen.lang: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS keygen.lang: IDL set to NaN should not throw 
+PASS keygen.lang: IDL set to NaN followed by getAttribute() 
+PASS keygen.lang: IDL set to NaN followed by IDL get 
+PASS keygen.lang: IDL set to Infinity should not throw 
+PASS keygen.lang: IDL set to Infinity followed by getAttribute() 
+PASS keygen.lang: IDL set to Infinity followed by IDL get 
+PASS keygen.lang: IDL set to -Infinity should not throw 
+PASS keygen.lang: IDL set to -Infinity followed by getAttribute() 
+PASS keygen.lang: IDL set to -Infinity followed by IDL get 
+PASS keygen.lang: IDL set to &quot;\0&quot; should not throw 
+PASS keygen.lang: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS keygen.lang: IDL set to &quot;\0&quot; followed by IDL get 
+PASS keygen.lang: IDL set to null should not throw 
+PASS keygen.lang: IDL set to null followed by getAttribute() 
+PASS keygen.lang: IDL set to null followed by IDL get 
+PASS keygen.lang: IDL set to object &quot;test-toString&quot; should not throw 
+PASS keygen.lang: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS keygen.lang: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS keygen.lang: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS keygen.lang: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS keygen.lang: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS keygen.dir: typeof IDL attribute 
+PASS keygen.dir: IDL get with DOM attribute unset 
+PASS keygen.dir: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS keygen.dir: setAttribute() to &quot;&quot; followed by IDL get 
+PASS keygen.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS keygen.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS keygen.dir: setAttribute() to undefined followed by getAttribute() 
+PASS keygen.dir: setAttribute() to undefined followed by IDL get 
+PASS keygen.dir: setAttribute() to 7 followed by getAttribute() 
+PASS keygen.dir: setAttribute() to 7 followed by IDL get 
+PASS keygen.dir: setAttribute() to 1.5 followed by getAttribute() 
+PASS keygen.dir: setAttribute() to 1.5 followed by IDL get 
+PASS keygen.dir: setAttribute() to true followed by getAttribute() 
+PASS keygen.dir: setAttribute() to true followed by IDL get 
+PASS keygen.dir: setAttribute() to false followed by getAttribute() 
+PASS keygen.dir: setAttribute() to false followed by IDL get 
+PASS keygen.dir: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS keygen.dir: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS keygen.dir: setAttribute() to NaN followed by getAttribute() 
+PASS keygen.dir: setAttribute() to NaN followed by IDL get 
+PASS keygen.dir: setAttribute() to Infinity followed by getAttribute() 
+PASS keygen.dir: setAttribute() to Infinity followed by IDL get 
+PASS keygen.dir: setAttribute() to -Infinity followed by getAttribute() 
+PASS keygen.dir: setAttribute() to -Infinity followed by IDL get 
+PASS keygen.dir: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS keygen.dir: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS keygen.dir: setAttribute() to null followed by getAttribute() 
+PASS keygen.dir: setAttribute() to null followed by IDL get 
+PASS keygen.dir: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS keygen.dir: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS keygen.dir: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS keygen.dir: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS keygen.dir: setAttribute() to &quot;ltr&quot; followed by getAttribute() 
+PASS keygen.dir: setAttribute() to &quot;ltr&quot; followed by IDL get 
+PASS keygen.dir: setAttribute() to &quot;xltr&quot; followed by getAttribute() 
+PASS keygen.dir: setAttribute() to &quot;xltr&quot; followed by IDL get 
+PASS keygen.dir: setAttribute() to &quot;ltr\0&quot; followed by getAttribute() 
+PASS keygen.dir: setAttribute() to &quot;ltr\0&quot; followed by IDL get 
+PASS keygen.dir: setAttribute() to &quot;tr&quot; followed by getAttribute() 
+PASS keygen.dir: setAttribute() to &quot;tr&quot; followed by IDL get 
+PASS keygen.dir: setAttribute() to &quot;LTR&quot; followed by getAttribute() 
+PASS keygen.dir: setAttribute() to &quot;LTR&quot; followed by IDL get 
+PASS keygen.dir: setAttribute() to &quot;rtl&quot; followed by getAttribute() 
+PASS keygen.dir: setAttribute() to &quot;rtl&quot; followed by IDL get 
+PASS keygen.dir: setAttribute() to &quot;xrtl&quot; followed by getAttribute() 
+PASS keygen.dir: setAttribute() to &quot;xrtl&quot; followed by IDL get 
+PASS keygen.dir: setAttribute() to &quot;rtl\0&quot; followed by getAttribute() 
+PASS keygen.dir: setAttribute() to &quot;rtl\0&quot; followed by IDL get 
+PASS keygen.dir: setAttribute() to &quot;tl&quot; followed by getAttribute() 
+PASS keygen.dir: setAttribute() to &quot;tl&quot; followed by IDL get 
+PASS keygen.dir: setAttribute() to &quot;RTL&quot; followed by getAttribute() 
+PASS keygen.dir: setAttribute() to &quot;RTL&quot; followed by IDL get 
+PASS keygen.dir: setAttribute() to &quot;auto&quot; followed by getAttribute() 
+PASS keygen.dir: setAttribute() to &quot;auto&quot; followed by IDL get 
+PASS keygen.dir: setAttribute() to &quot;xauto&quot; followed by getAttribute() 
+PASS keygen.dir: setAttribute() to &quot;xauto&quot; followed by IDL get 
+PASS keygen.dir: setAttribute() to &quot;auto\0&quot; followed by getAttribute() 
+PASS keygen.dir: setAttribute() to &quot;auto\0&quot; followed by IDL get 
+PASS keygen.dir: setAttribute() to &quot;uto&quot; followed by getAttribute() 
+PASS keygen.dir: setAttribute() to &quot;uto&quot; followed by IDL get 
+PASS keygen.dir: setAttribute() to &quot;AUTO&quot; followed by getAttribute() 
+PASS keygen.dir: setAttribute() to &quot;AUTO&quot; followed by IDL get 
+PASS keygen.dir: IDL set to &quot;&quot; should not throw 
+PASS keygen.dir: IDL set to &quot;&quot; followed by getAttribute() 
+PASS keygen.dir: IDL set to &quot;&quot; followed by IDL get 
+PASS keygen.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS keygen.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS keygen.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS keygen.dir: IDL set to undefined should not throw 
+PASS keygen.dir: IDL set to undefined followed by getAttribute() 
+PASS keygen.dir: IDL set to undefined followed by IDL get 
+PASS keygen.dir: IDL set to 7 should not throw 
+PASS keygen.dir: IDL set to 7 followed by getAttribute() 
+PASS keygen.dir: IDL set to 7 followed by IDL get 
+PASS keygen.dir: IDL set to 1.5 should not throw 
+PASS keygen.dir: IDL set to 1.5 followed by getAttribute() 
+PASS keygen.dir: IDL set to 1.5 followed by IDL get 
+PASS keygen.dir: IDL set to true should not throw 
+PASS keygen.dir: IDL set to true followed by getAttribute() 
+PASS keygen.dir: IDL set to true followed by IDL get 
+PASS keygen.dir: IDL set to false should not throw 
+PASS keygen.dir: IDL set to false followed by getAttribute() 
+PASS keygen.dir: IDL set to false followed by IDL get 
+PASS keygen.dir: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS keygen.dir: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS keygen.dir: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS keygen.dir: IDL set to NaN should not throw 
+PASS keygen.dir: IDL set to NaN followed by getAttribute() 
+PASS keygen.dir: IDL set to NaN followed by IDL get 
+PASS keygen.dir: IDL set to Infinity should not throw 
+PASS keygen.dir: IDL set to Infinity followed by getAttribute() 
+PASS keygen.dir: IDL set to Infinity followed by IDL get 
+PASS keygen.dir: IDL set to -Infinity should not throw 
+PASS keygen.dir: IDL set to -Infinity followed by getAttribute() 
+PASS keygen.dir: IDL set to -Infinity followed by IDL get 
+PASS keygen.dir: IDL set to &quot;\0&quot; should not throw 
+PASS keygen.dir: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS keygen.dir: IDL set to &quot;\0&quot; followed by IDL get 
+PASS keygen.dir: IDL set to null should not throw 
+PASS keygen.dir: IDL set to null followed by IDL get 
+PASS keygen.dir: IDL set to object &quot;test-toString&quot; should not throw 
+PASS keygen.dir: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS keygen.dir: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS keygen.dir: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS keygen.dir: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS keygen.dir: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS keygen.dir: IDL set to &quot;ltr&quot; should not throw 
+PASS keygen.dir: IDL set to &quot;ltr&quot; followed by getAttribute() 
+PASS keygen.dir: IDL set to &quot;ltr&quot; followed by IDL get 
+PASS keygen.dir: IDL set to &quot;xltr&quot; should not throw 
+PASS keygen.dir: IDL set to &quot;xltr&quot; followed by getAttribute() 
+PASS keygen.dir: IDL set to &quot;xltr&quot; followed by IDL get 
+PASS keygen.dir: IDL set to &quot;ltr\0&quot; should not throw 
+PASS keygen.dir: IDL set to &quot;ltr\0&quot; followed by getAttribute() 
+PASS keygen.dir: IDL set to &quot;ltr\0&quot; followed by IDL get 
+PASS keygen.dir: IDL set to &quot;tr&quot; should not throw 
+PASS keygen.dir: IDL set to &quot;tr&quot; followed by getAttribute() 
+PASS keygen.dir: IDL set to &quot;tr&quot; followed by IDL get 
+PASS keygen.dir: IDL set to &quot;LTR&quot; should not throw 
+PASS keygen.dir: IDL set to &quot;LTR&quot; followed by getAttribute() 
+PASS keygen.dir: IDL set to &quot;LTR&quot; followed by IDL get 
+PASS keygen.dir: IDL set to &quot;rtl&quot; should not throw 
+PASS keygen.dir: IDL set to &quot;rtl&quot; followed by getAttribute() 
+PASS keygen.dir: IDL set to &quot;rtl&quot; followed by IDL get 
+PASS keygen.dir: IDL set to &quot;xrtl&quot; should not throw 
+PASS keygen.dir: IDL set to &quot;xrtl&quot; followed by getAttribute() 
+PASS keygen.dir: IDL set to &quot;xrtl&quot; followed by IDL get 
+PASS keygen.dir: IDL set to &quot;rtl\0&quot; should not throw 
+PASS keygen.dir: IDL set to &quot;rtl\0&quot; followed by getAttribute() 
+PASS keygen.dir: IDL set to &quot;rtl\0&quot; followed by IDL get 
+PASS keygen.dir: IDL set to &quot;tl&quot; should not throw 
+PASS keygen.dir: IDL set to &quot;tl&quot; followed by getAttribute() 
+PASS keygen.dir: IDL set to &quot;tl&quot; followed by IDL get 
+PASS keygen.dir: IDL set to &quot;RTL&quot; should not throw 
+PASS keygen.dir: IDL set to &quot;RTL&quot; followed by getAttribute() 
+PASS keygen.dir: IDL set to &quot;RTL&quot; followed by IDL get 
+PASS keygen.dir: IDL set to &quot;auto&quot; should not throw 
+PASS keygen.dir: IDL set to &quot;auto&quot; followed by getAttribute() 
+PASS keygen.dir: IDL set to &quot;auto&quot; followed by IDL get 
+PASS keygen.dir: IDL set to &quot;xauto&quot; should not throw 
+PASS keygen.dir: IDL set to &quot;xauto&quot; followed by getAttribute() 
+PASS keygen.dir: IDL set to &quot;xauto&quot; followed by IDL get 
+PASS keygen.dir: IDL set to &quot;auto\0&quot; should not throw 
+PASS keygen.dir: IDL set to &quot;auto\0&quot; followed by getAttribute() 
+PASS keygen.dir: IDL set to &quot;auto\0&quot; followed by IDL get 
+PASS keygen.dir: IDL set to &quot;uto&quot; should not throw 
+PASS keygen.dir: IDL set to &quot;uto&quot; followed by getAttribute() 
+PASS keygen.dir: IDL set to &quot;uto&quot; followed by IDL get 
+PASS keygen.dir: IDL set to &quot;AUTO&quot; should not throw 
+PASS keygen.dir: IDL set to &quot;AUTO&quot; followed by getAttribute() 
+PASS keygen.dir: IDL set to &quot;AUTO&quot; followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): typeof IDL attribute 
+PASS keygen.className (&lt;keygen class&gt;): IDL get with DOM attribute unset 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to &quot;&quot; followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to undefined followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to undefined followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to 7 followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to 7 followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to 1.5 followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to 1.5 followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to true followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to true followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to false followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to false followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to NaN followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to NaN followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to Infinity followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to Infinity followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to -Infinity followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to -Infinity followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to null followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to null followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to &quot;&quot; should not throw 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to &quot;&quot; followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to &quot;&quot; followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to undefined should not throw 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to undefined followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to undefined followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to 7 should not throw 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to 7 followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to 7 followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to 1.5 should not throw 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to 1.5 followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to 1.5 followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to true should not throw 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to true followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to true followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to false should not throw 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to false followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to false followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to object &quot;[object Object]&quot; should not throw 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to NaN should not throw 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to NaN followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to NaN followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to Infinity should not throw 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to Infinity followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to Infinity followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to -Infinity should not throw 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to -Infinity followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to -Infinity followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to &quot;\0&quot; should not throw 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to &quot;\0&quot; followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to null should not throw 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to null followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to null followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to object &quot;test-toString&quot; should not throw 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS keygen.className (&lt;keygen class&gt;): IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS keygen.hidden: typeof IDL attribute 
+PASS keygen.hidden: IDL get with DOM attribute unset 
+PASS keygen.hidden: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS keygen.hidden: setAttribute() to &quot;&quot; followed by IDL get 
+PASS keygen.hidden: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS keygen.hidden: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS keygen.hidden: setAttribute() to undefined followed by getAttribute() 
+PASS keygen.hidden: setAttribute() to undefined followed by IDL get 
+PASS keygen.hidden: setAttribute() to null followed by getAttribute() 
+PASS keygen.hidden: setAttribute() to null followed by IDL get 
+PASS keygen.hidden: setAttribute() to 7 followed by getAttribute() 
+PASS keygen.hidden: setAttribute() to 7 followed by IDL get 
+PASS keygen.hidden: setAttribute() to 1.5 followed by getAttribute() 
+PASS keygen.hidden: setAttribute() to 1.5 followed by IDL get 
+PASS keygen.hidden: setAttribute() to true followed by getAttribute() 
+PASS keygen.hidden: setAttribute() to true followed by IDL get 
+PASS keygen.hidden: setAttribute() to false followed by getAttribute() 
+PASS keygen.hidden: setAttribute() to false followed by IDL get 
+PASS keygen.hidden: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS keygen.hidden: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS keygen.hidden: setAttribute() to NaN followed by getAttribute() 
+PASS keygen.hidden: setAttribute() to NaN followed by IDL get 
+PASS keygen.hidden: setAttribute() to Infinity followed by getAttribute() 
+PASS keygen.hidden: setAttribute() to Infinity followed by IDL get 
+PASS keygen.hidden: setAttribute() to -Infinity followed by getAttribute() 
+PASS keygen.hidden: setAttribute() to -Infinity followed by IDL get 
+PASS keygen.hidden: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS keygen.hidden: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS keygen.hidden: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS keygen.hidden: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS keygen.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS keygen.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS keygen.hidden: setAttribute() to &quot;hidden&quot; followed by getAttribute() 
+PASS keygen.hidden: setAttribute() to &quot;hidden&quot; followed by IDL get 
+PASS keygen.hidden: IDL set to &quot;&quot; should not throw 
+PASS keygen.hidden: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS keygen.hidden: IDL set to &quot;&quot; followed by IDL get 
+PASS keygen.hidden: IDL set to &quot; foo &quot; should not throw 
+PASS keygen.hidden: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS keygen.hidden: IDL set to &quot; foo &quot; followed by IDL get 
+PASS keygen.hidden: IDL set to undefined should not throw 
+PASS keygen.hidden: IDL set to undefined followed by hasAttribute() 
+PASS keygen.hidden: IDL set to undefined followed by IDL get 
+PASS keygen.hidden: IDL set to null should not throw 
+PASS keygen.hidden: IDL set to null followed by hasAttribute() 
+PASS keygen.hidden: IDL set to null followed by IDL get 
+PASS keygen.hidden: IDL set to 7 should not throw 
+PASS keygen.hidden: IDL set to 7 followed by hasAttribute() 
+PASS keygen.hidden: IDL set to 7 followed by IDL get 
+PASS keygen.hidden: IDL set to 1.5 should not throw 
+PASS keygen.hidden: IDL set to 1.5 followed by hasAttribute() 
+PASS keygen.hidden: IDL set to 1.5 followed by IDL get 
+PASS keygen.hidden: IDL set to true should not throw 
+PASS keygen.hidden: IDL set to true followed by hasAttribute() 
+PASS keygen.hidden: IDL set to true followed by IDL get 
+PASS keygen.hidden: IDL set to false should not throw 
+PASS keygen.hidden: IDL set to false followed by hasAttribute() 
+PASS keygen.hidden: IDL set to false followed by IDL get 
+PASS keygen.hidden: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS keygen.hidden: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS keygen.hidden: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS keygen.hidden: IDL set to NaN should not throw 
+PASS keygen.hidden: IDL set to NaN followed by hasAttribute() 
+PASS keygen.hidden: IDL set to NaN followed by IDL get 
+PASS keygen.hidden: IDL set to Infinity should not throw 
+PASS keygen.hidden: IDL set to Infinity followed by hasAttribute() 
+PASS keygen.hidden: IDL set to Infinity followed by IDL get 
+PASS keygen.hidden: IDL set to -Infinity should not throw 
+PASS keygen.hidden: IDL set to -Infinity followed by hasAttribute() 
+PASS keygen.hidden: IDL set to -Infinity followed by IDL get 
+PASS keygen.hidden: IDL set to &quot;\0&quot; should not throw 
+PASS keygen.hidden: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS keygen.hidden: IDL set to &quot;\0&quot; followed by IDL get 
+PASS keygen.hidden: IDL set to object &quot;test-toString&quot; should not throw 
+PASS keygen.hidden: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS keygen.hidden: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS keygen.hidden: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS keygen.hidden: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS keygen.hidden: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS keygen.accessKey: typeof IDL attribute 
+PASS keygen.accessKey: IDL get with DOM attribute unset 
+PASS keygen.accessKey: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS keygen.accessKey: setAttribute() to &quot;&quot; followed by IDL get 
+PASS keygen.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS keygen.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS keygen.accessKey: setAttribute() to undefined followed by getAttribute() 
+PASS keygen.accessKey: setAttribute() to undefined followed by IDL get 
+PASS keygen.accessKey: setAttribute() to 7 followed by getAttribute() 
+PASS keygen.accessKey: setAttribute() to 7 followed by IDL get 
+PASS keygen.accessKey: setAttribute() to 1.5 followed by getAttribute() 
+PASS keygen.accessKey: setAttribute() to 1.5 followed by IDL get 
+PASS keygen.accessKey: setAttribute() to true followed by getAttribute() 
+PASS keygen.accessKey: setAttribute() to true followed by IDL get 
+PASS keygen.accessKey: setAttribute() to false followed by getAttribute() 
+PASS keygen.accessKey: setAttribute() to false followed by IDL get 
+PASS keygen.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS keygen.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS keygen.accessKey: setAttribute() to NaN followed by getAttribute() 
+PASS keygen.accessKey: setAttribute() to NaN followed by IDL get 
+PASS keygen.accessKey: setAttribute() to Infinity followed by getAttribute() 
+PASS keygen.accessKey: setAttribute() to Infinity followed by IDL get 
+PASS keygen.accessKey: setAttribute() to -Infinity followed by getAttribute() 
+PASS keygen.accessKey: setAttribute() to -Infinity followed by IDL get 
+PASS keygen.accessKey: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS keygen.accessKey: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS keygen.accessKey: setAttribute() to null followed by getAttribute() 
+PASS keygen.accessKey: setAttribute() to null followed by IDL get 
+PASS keygen.accessKey: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS keygen.accessKey: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS keygen.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS keygen.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS keygen.accessKey: IDL set to &quot;&quot; should not throw 
+PASS keygen.accessKey: IDL set to &quot;&quot; followed by getAttribute() 
+PASS keygen.accessKey: IDL set to &quot;&quot; followed by IDL get 
+PASS keygen.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS keygen.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS keygen.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS keygen.accessKey: IDL set to undefined should not throw 
+PASS keygen.accessKey: IDL set to undefined followed by getAttribute() 
+PASS keygen.accessKey: IDL set to undefined followed by IDL get 
+PASS keygen.accessKey: IDL set to 7 should not throw 
+PASS keygen.accessKey: IDL set to 7 followed by getAttribute() 
+PASS keygen.accessKey: IDL set to 7 followed by IDL get 
+PASS keygen.accessKey: IDL set to 1.5 should not throw 
+PASS keygen.accessKey: IDL set to 1.5 followed by getAttribute() 
+PASS keygen.accessKey: IDL set to 1.5 followed by IDL get 
+PASS keygen.accessKey: IDL set to true should not throw 
+PASS keygen.accessKey: IDL set to true followed by getAttribute() 
+PASS keygen.accessKey: IDL set to true followed by IDL get 
+PASS keygen.accessKey: IDL set to false should not throw 
+PASS keygen.accessKey: IDL set to false followed by getAttribute() 
+PASS keygen.accessKey: IDL set to false followed by IDL get 
+PASS keygen.accessKey: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS keygen.accessKey: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS keygen.accessKey: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS keygen.accessKey: IDL set to NaN should not throw 
+PASS keygen.accessKey: IDL set to NaN followed by getAttribute() 
+PASS keygen.accessKey: IDL set to NaN followed by IDL get 
+PASS keygen.accessKey: IDL set to Infinity should not throw 
+PASS keygen.accessKey: IDL set to Infinity followed by getAttribute() 
+PASS keygen.accessKey: IDL set to Infinity followed by IDL get 
+PASS keygen.accessKey: IDL set to -Infinity should not throw 
+PASS keygen.accessKey: IDL set to -Infinity followed by getAttribute() 
+PASS keygen.accessKey: IDL set to -Infinity followed by IDL get 
+PASS keygen.accessKey: IDL set to &quot;\0&quot; should not throw 
+PASS keygen.accessKey: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS keygen.accessKey: IDL set to &quot;\0&quot; followed by IDL get 
+PASS keygen.accessKey: IDL set to null should not throw 
+PASS keygen.accessKey: IDL set to null followed by getAttribute() 
+PASS keygen.accessKey: IDL set to null followed by IDL get 
+PASS keygen.accessKey: IDL set to object &quot;test-toString&quot; should not throw 
+PASS keygen.accessKey: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS keygen.accessKey: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS keygen.accessKey: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS keygen.accessKey: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS keygen.accessKey: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS keygen.tabIndex: typeof IDL attribute 
+PASS keygen.tabIndex: setAttribute() to -36 followed by getAttribute() 
+PASS keygen.tabIndex: setAttribute() to -36 followed by IDL get 
+PASS keygen.tabIndex: setAttribute() to -1 followed by getAttribute() 
+PASS keygen.tabIndex: setAttribute() to -1 followed by IDL get 
+PASS keygen.tabIndex: setAttribute() to 0 followed by getAttribute() 
+PASS keygen.tabIndex: setAttribute() to 0 followed by IDL get 
+PASS keygen.tabIndex: setAttribute() to 1 followed by getAttribute() 
+PASS keygen.tabIndex: setAttribute() to 1 followed by IDL get 
+PASS keygen.tabIndex: setAttribute() to 2147483647 followed by getAttribute() 
+PASS keygen.tabIndex: setAttribute() to 2147483647 followed by IDL get 
+PASS keygen.tabIndex: setAttribute() to -2147483648 followed by getAttribute() 
+PASS keygen.tabIndex: setAttribute() to -2147483648 followed by IDL get 
+PASS keygen.tabIndex: setAttribute() to &quot;-1&quot; followed by getAttribute() 
+PASS keygen.tabIndex: setAttribute() to &quot;-1&quot; followed by IDL get 
+PASS keygen.tabIndex: setAttribute() to &quot;-0&quot; followed by getAttribute() 
+PASS keygen.tabIndex: setAttribute() to &quot;-0&quot; followed by IDL get 
+PASS keygen.tabIndex: setAttribute() to &quot;0&quot; followed by getAttribute() 
+PASS keygen.tabIndex: setAttribute() to &quot;0&quot; followed by IDL get 
+PASS keygen.tabIndex: setAttribute() to &quot;1&quot; followed by getAttribute() 
+PASS keygen.tabIndex: setAttribute() to &quot;1&quot; followed by IDL get 
+PASS keygen.tabIndex: setAttribute() to &quot;\t7&quot; followed by getAttribute() 
+PASS keygen.tabIndex: setAttribute() to &quot;\t7&quot; followed by IDL get 
+PASS keygen.tabIndex: setAttribute() to &quot;\f7&quot; followed by getAttribute() 
+PASS keygen.tabIndex: setAttribute() to &quot;\f7&quot; followed by IDL get 
+PASS keygen.tabIndex: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS keygen.tabIndex: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS keygen.tabIndex: setAttribute() to &quot;\n7&quot; followed by getAttribute() 
+PASS keygen.tabIndex: setAttribute() to &quot;\n7&quot; followed by IDL get 
+PASS keygen.tabIndex: setAttribute() to &quot;\r7&quot; followed by getAttribute() 
+PASS keygen.tabIndex: setAttribute() to &quot;\r7&quot; followed by IDL get 
+PASS keygen.tabIndex: setAttribute() to 1.5 followed by getAttribute() 
+PASS keygen.tabIndex: setAttribute() to 1.5 followed by IDL get 
+PASS keygen.tabIndex: setAttribute() to object &quot;2&quot; followed by getAttribute() 
+PASS keygen.tabIndex: setAttribute() to object &quot;2&quot; followed by IDL get 
+PASS keygen.tabIndex: IDL set to -36 should not throw 
+PASS keygen.tabIndex: IDL set to -36 followed by getAttribute() 
+PASS keygen.tabIndex: IDL set to -36 followed by IDL get 
+PASS keygen.tabIndex: IDL set to -1 should not throw 
+PASS keygen.tabIndex: IDL set to -1 followed by getAttribute() 
+PASS keygen.tabIndex: IDL set to -1 followed by IDL get 
+PASS keygen.tabIndex: IDL set to 0 should not throw 
+PASS keygen.tabIndex: IDL set to 0 followed by getAttribute() 
+PASS keygen.tabIndex: IDL set to 0 followed by IDL get 
+PASS keygen.tabIndex: IDL set to 1 should not throw 
+PASS keygen.tabIndex: IDL set to 1 followed by getAttribute() 
+PASS keygen.tabIndex: IDL set to 1 followed by IDL get 
+PASS keygen.tabIndex: IDL set to 2147483647 should not throw 
+PASS keygen.tabIndex: IDL set to 2147483647 followed by getAttribute() 
+PASS keygen.tabIndex: IDL set to 2147483647 followed by IDL get 
+PASS keygen.tabIndex: IDL set to -2147483648 should not throw 
+PASS keygen.tabIndex: IDL set to -2147483648 followed by getAttribute() 
+PASS keygen.tabIndex: IDL set to -2147483648 followed by IDL get 
+PASS keygen.autofocus: typeof IDL attribute 
+PASS keygen.autofocus: IDL get with DOM attribute unset 
+PASS keygen.autofocus: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS keygen.autofocus: setAttribute() to &quot;&quot; followed by IDL get 
+PASS keygen.autofocus: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS keygen.autofocus: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS keygen.autofocus: setAttribute() to undefined followed by getAttribute() 
+PASS keygen.autofocus: setAttribute() to undefined followed by IDL get 
+PASS keygen.autofocus: setAttribute() to null followed by getAttribute() 
+PASS keygen.autofocus: setAttribute() to null followed by IDL get 
+PASS keygen.autofocus: setAttribute() to 7 followed by getAttribute() 
+PASS keygen.autofocus: setAttribute() to 7 followed by IDL get 
+PASS keygen.autofocus: setAttribute() to 1.5 followed by getAttribute() 
+PASS keygen.autofocus: setAttribute() to 1.5 followed by IDL get 
+PASS keygen.autofocus: setAttribute() to true followed by getAttribute() 
+PASS keygen.autofocus: setAttribute() to true followed by IDL get 
+PASS keygen.autofocus: setAttribute() to false followed by getAttribute() 
+PASS keygen.autofocus: setAttribute() to false followed by IDL get 
+PASS keygen.autofocus: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS keygen.autofocus: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS keygen.autofocus: setAttribute() to NaN followed by getAttribute() 
+PASS keygen.autofocus: setAttribute() to NaN followed by IDL get 
+PASS keygen.autofocus: setAttribute() to Infinity followed by getAttribute() 
+PASS keygen.autofocus: setAttribute() to Infinity followed by IDL get 
+PASS keygen.autofocus: setAttribute() to -Infinity followed by getAttribute() 
+PASS keygen.autofocus: setAttribute() to -Infinity followed by IDL get 
+PASS keygen.autofocus: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS keygen.autofocus: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS keygen.autofocus: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS keygen.autofocus: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS keygen.autofocus: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS keygen.autofocus: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS keygen.autofocus: setAttribute() to &quot;autofocus&quot; followed by getAttribute() 
+PASS keygen.autofocus: setAttribute() to &quot;autofocus&quot; followed by IDL get 
+PASS keygen.autofocus: IDL set to &quot;&quot; should not throw 
+PASS keygen.autofocus: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS keygen.autofocus: IDL set to &quot;&quot; followed by IDL get 
+PASS keygen.autofocus: IDL set to &quot; foo &quot; should not throw 
+PASS keygen.autofocus: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS keygen.autofocus: IDL set to &quot; foo &quot; followed by IDL get 
+PASS keygen.autofocus: IDL set to undefined should not throw 
+PASS keygen.autofocus: IDL set to undefined followed by hasAttribute() 
+PASS keygen.autofocus: IDL set to undefined followed by IDL get 
+PASS keygen.autofocus: IDL set to null should not throw 
+PASS keygen.autofocus: IDL set to null followed by hasAttribute() 
+PASS keygen.autofocus: IDL set to null followed by IDL get 
+PASS keygen.autofocus: IDL set to 7 should not throw 
+PASS keygen.autofocus: IDL set to 7 followed by hasAttribute() 
+PASS keygen.autofocus: IDL set to 7 followed by IDL get 
+PASS keygen.autofocus: IDL set to 1.5 should not throw 
+PASS keygen.autofocus: IDL set to 1.5 followed by hasAttribute() 
+PASS keygen.autofocus: IDL set to 1.5 followed by IDL get 
+PASS keygen.autofocus: IDL set to true should not throw 
+PASS keygen.autofocus: IDL set to true followed by hasAttribute() 
+PASS keygen.autofocus: IDL set to true followed by IDL get 
+PASS keygen.autofocus: IDL set to false should not throw 
+PASS keygen.autofocus: IDL set to false followed by hasAttribute() 
+PASS keygen.autofocus: IDL set to false followed by IDL get 
+PASS keygen.autofocus: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS keygen.autofocus: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS keygen.autofocus: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS keygen.autofocus: IDL set to NaN should not throw 
+PASS keygen.autofocus: IDL set to NaN followed by hasAttribute() 
+PASS keygen.autofocus: IDL set to NaN followed by IDL get 
+PASS keygen.autofocus: IDL set to Infinity should not throw 
+PASS keygen.autofocus: IDL set to Infinity followed by hasAttribute() 
+PASS keygen.autofocus: IDL set to Infinity followed by IDL get 
+PASS keygen.autofocus: IDL set to -Infinity should not throw 
+PASS keygen.autofocus: IDL set to -Infinity followed by hasAttribute() 
+PASS keygen.autofocus: IDL set to -Infinity followed by IDL get 
+PASS keygen.autofocus: IDL set to &quot;\0&quot; should not throw 
+PASS keygen.autofocus: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS keygen.autofocus: IDL set to &quot;\0&quot; followed by IDL get 
+PASS keygen.autofocus: IDL set to object &quot;test-toString&quot; should not throw 
+PASS keygen.autofocus: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS keygen.autofocus: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS keygen.autofocus: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS keygen.autofocus: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS keygen.autofocus: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS keygen.challenge: typeof IDL attribute 
+PASS keygen.challenge: IDL get with DOM attribute unset 
+PASS keygen.challenge: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS keygen.challenge: setAttribute() to &quot;&quot; followed by IDL get 
+PASS keygen.challenge: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS keygen.challenge: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS keygen.challenge: setAttribute() to undefined followed by getAttribute() 
+PASS keygen.challenge: setAttribute() to undefined followed by IDL get 
+PASS keygen.challenge: setAttribute() to 7 followed by getAttribute() 
+PASS keygen.challenge: setAttribute() to 7 followed by IDL get 
+PASS keygen.challenge: setAttribute() to 1.5 followed by getAttribute() 
+PASS keygen.challenge: setAttribute() to 1.5 followed by IDL get 
+PASS keygen.challenge: setAttribute() to true followed by getAttribute() 
+PASS keygen.challenge: setAttribute() to true followed by IDL get 
+PASS keygen.challenge: setAttribute() to false followed by getAttribute() 
+PASS keygen.challenge: setAttribute() to false followed by IDL get 
+PASS keygen.challenge: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS keygen.challenge: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS keygen.challenge: setAttribute() to NaN followed by getAttribute() 
+PASS keygen.challenge: setAttribute() to NaN followed by IDL get 
+PASS keygen.challenge: setAttribute() to Infinity followed by getAttribute() 
+PASS keygen.challenge: setAttribute() to Infinity followed by IDL get 
+PASS keygen.challenge: setAttribute() to -Infinity followed by getAttribute() 
+PASS keygen.challenge: setAttribute() to -Infinity followed by IDL get 
+PASS keygen.challenge: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS keygen.challenge: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS keygen.challenge: setAttribute() to null followed by getAttribute() 
+PASS keygen.challenge: setAttribute() to null followed by IDL get 
+PASS keygen.challenge: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS keygen.challenge: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS keygen.challenge: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS keygen.challenge: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS keygen.challenge: IDL set to &quot;&quot; should not throw 
+PASS keygen.challenge: IDL set to &quot;&quot; followed by getAttribute() 
+PASS keygen.challenge: IDL set to &quot;&quot; followed by IDL get 
+PASS keygen.challenge: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS keygen.challenge: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS keygen.challenge: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS keygen.challenge: IDL set to undefined should not throw 
+PASS keygen.challenge: IDL set to undefined followed by getAttribute() 
+PASS keygen.challenge: IDL set to undefined followed by IDL get 
+PASS keygen.challenge: IDL set to 7 should not throw 
+PASS keygen.challenge: IDL set to 7 followed by getAttribute() 
+PASS keygen.challenge: IDL set to 7 followed by IDL get 
+PASS keygen.challenge: IDL set to 1.5 should not throw 
+PASS keygen.challenge: IDL set to 1.5 followed by getAttribute() 
+PASS keygen.challenge: IDL set to 1.5 followed by IDL get 
+PASS keygen.challenge: IDL set to true should not throw 
+PASS keygen.challenge: IDL set to true followed by getAttribute() 
+PASS keygen.challenge: IDL set to true followed by IDL get 
+PASS keygen.challenge: IDL set to false should not throw 
+PASS keygen.challenge: IDL set to false followed by getAttribute() 
+PASS keygen.challenge: IDL set to false followed by IDL get 
+PASS keygen.challenge: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS keygen.challenge: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS keygen.challenge: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS keygen.challenge: IDL set to NaN should not throw 
+PASS keygen.challenge: IDL set to NaN followed by getAttribute() 
+PASS keygen.challenge: IDL set to NaN followed by IDL get 
+PASS keygen.challenge: IDL set to Infinity should not throw 
+PASS keygen.challenge: IDL set to Infinity followed by getAttribute() 
+PASS keygen.challenge: IDL set to Infinity followed by IDL get 
+PASS keygen.challenge: IDL set to -Infinity should not throw 
+PASS keygen.challenge: IDL set to -Infinity followed by getAttribute() 
+PASS keygen.challenge: IDL set to -Infinity followed by IDL get 
+PASS keygen.challenge: IDL set to &quot;\0&quot; should not throw 
+PASS keygen.challenge: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS keygen.challenge: IDL set to &quot;\0&quot; followed by IDL get 
+PASS keygen.challenge: IDL set to null should not throw 
+PASS keygen.challenge: IDL set to null followed by getAttribute() 
+PASS keygen.challenge: IDL set to null followed by IDL get 
+PASS keygen.challenge: IDL set to object &quot;test-toString&quot; should not throw 
+PASS keygen.challenge: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS keygen.challenge: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS keygen.challenge: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS keygen.challenge: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS keygen.challenge: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS keygen.disabled: typeof IDL attribute 
+PASS keygen.disabled: IDL get with DOM attribute unset 
+PASS keygen.disabled: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS keygen.disabled: setAttribute() to &quot;&quot; followed by IDL get 
+PASS keygen.disabled: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS keygen.disabled: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS keygen.disabled: setAttribute() to undefined followed by getAttribute() 
+PASS keygen.disabled: setAttribute() to undefined followed by IDL get 
+PASS keygen.disabled: setAttribute() to null followed by getAttribute() 
+PASS keygen.disabled: setAttribute() to null followed by IDL get 
+PASS keygen.disabled: setAttribute() to 7 followed by getAttribute() 
+PASS keygen.disabled: setAttribute() to 7 followed by IDL get 
+PASS keygen.disabled: setAttribute() to 1.5 followed by getAttribute() 
+PASS keygen.disabled: setAttribute() to 1.5 followed by IDL get 
+PASS keygen.disabled: setAttribute() to true followed by getAttribute() 
+PASS keygen.disabled: setAttribute() to true followed by IDL get 
+PASS keygen.disabled: setAttribute() to false followed by getAttribute() 
+PASS keygen.disabled: setAttribute() to false followed by IDL get 
+PASS keygen.disabled: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS keygen.disabled: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS keygen.disabled: setAttribute() to NaN followed by getAttribute() 
+PASS keygen.disabled: setAttribute() to NaN followed by IDL get 
+PASS keygen.disabled: setAttribute() to Infinity followed by getAttribute() 
+PASS keygen.disabled: setAttribute() to Infinity followed by IDL get 
+PASS keygen.disabled: setAttribute() to -Infinity followed by getAttribute() 
+PASS keygen.disabled: setAttribute() to -Infinity followed by IDL get 
+PASS keygen.disabled: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS keygen.disabled: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS keygen.disabled: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS keygen.disabled: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS keygen.disabled: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS keygen.disabled: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS keygen.disabled: setAttribute() to &quot;disabled&quot; followed by getAttribute() 
+PASS keygen.disabled: setAttribute() to &quot;disabled&quot; followed by IDL get 
+PASS keygen.disabled: IDL set to &quot;&quot; should not throw 
+PASS keygen.disabled: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS keygen.disabled: IDL set to &quot;&quot; followed by IDL get 
+PASS keygen.disabled: IDL set to &quot; foo &quot; should not throw 
+PASS keygen.disabled: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS keygen.disabled: IDL set to &quot; foo &quot; followed by IDL get 
+PASS keygen.disabled: IDL set to undefined should not throw 
+PASS keygen.disabled: IDL set to undefined followed by hasAttribute() 
+PASS keygen.disabled: IDL set to undefined followed by IDL get 
+PASS keygen.disabled: IDL set to null should not throw 
+PASS keygen.disabled: IDL set to null followed by hasAttribute() 
+PASS keygen.disabled: IDL set to null followed by IDL get 
+PASS keygen.disabled: IDL set to 7 should not throw 
+PASS keygen.disabled: IDL set to 7 followed by hasAttribute() 
+PASS keygen.disabled: IDL set to 7 followed by IDL get 
+PASS keygen.disabled: IDL set to 1.5 should not throw 
+PASS keygen.disabled: IDL set to 1.5 followed by hasAttribute() 
+PASS keygen.disabled: IDL set to 1.5 followed by IDL get 
+PASS keygen.disabled: IDL set to true should not throw 
+PASS keygen.disabled: IDL set to true followed by hasAttribute() 
+PASS keygen.disabled: IDL set to true followed by IDL get 
+PASS keygen.disabled: IDL set to false should not throw 
+PASS keygen.disabled: IDL set to false followed by hasAttribute() 
+PASS keygen.disabled: IDL set to false followed by IDL get 
+PASS keygen.disabled: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS keygen.disabled: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS keygen.disabled: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS keygen.disabled: IDL set to NaN should not throw 
+PASS keygen.disabled: IDL set to NaN followed by hasAttribute() 
+PASS keygen.disabled: IDL set to NaN followed by IDL get 
+PASS keygen.disabled: IDL set to Infinity should not throw 
+PASS keygen.disabled: IDL set to Infinity followed by hasAttribute() 
+PASS keygen.disabled: IDL set to Infinity followed by IDL get 
+PASS keygen.disabled: IDL set to -Infinity should not throw 
+PASS keygen.disabled: IDL set to -Infinity followed by hasAttribute() 
+PASS keygen.disabled: IDL set to -Infinity followed by IDL get 
+PASS keygen.disabled: IDL set to &quot;\0&quot; should not throw 
+PASS keygen.disabled: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS keygen.disabled: IDL set to &quot;\0&quot; followed by IDL get 
+PASS keygen.disabled: IDL set to object &quot;test-toString&quot; should not throw 
+PASS keygen.disabled: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS keygen.disabled: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS keygen.disabled: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS keygen.disabled: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS keygen.disabled: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS keygen.keytype: typeof IDL attribute 
+PASS keygen.keytype: setAttribute() to &quot;rsa&quot; followed by getAttribute() 
+PASS keygen.keytype: setAttribute() to &quot;rsa&quot; followed by IDL get 
+PASS keygen.keytype: setAttribute() to &quot;RSA&quot; followed by getAttribute() 
+PASS keygen.keytype: setAttribute() to &quot;RSA&quot; followed by IDL get 
+PASS keygen.keytype: IDL set to &quot;&quot; should not throw 
+PASS keygen.keytype: IDL set to &quot;&quot; followed by getAttribute() 
+PASS keygen.keytype: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS keygen.keytype: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS keygen.keytype: IDL set to undefined should not throw 
+PASS keygen.keytype: IDL set to undefined followed by getAttribute() 
+PASS keygen.keytype: IDL set to 7 should not throw 
+PASS keygen.keytype: IDL set to 7 followed by getAttribute() 
+PASS keygen.keytype: IDL set to 1.5 should not throw 
+PASS keygen.keytype: IDL set to 1.5 followed by getAttribute() 
+PASS keygen.keytype: IDL set to true should not throw 
+PASS keygen.keytype: IDL set to true followed by getAttribute() 
+PASS keygen.keytype: IDL set to false should not throw 
+PASS keygen.keytype: IDL set to false followed by getAttribute() 
+PASS keygen.keytype: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS keygen.keytype: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS keygen.keytype: IDL set to NaN should not throw 
+PASS keygen.keytype: IDL set to NaN followed by getAttribute() 
+PASS keygen.keytype: IDL set to Infinity should not throw 
+PASS keygen.keytype: IDL set to Infinity followed by getAttribute() 
+PASS keygen.keytype: IDL set to -Infinity should not throw 
+PASS keygen.keytype: IDL set to -Infinity followed by getAttribute() 
+PASS keygen.keytype: IDL set to &quot;\0&quot; should not throw 
+PASS keygen.keytype: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS keygen.keytype: IDL set to null should not throw 
+PASS keygen.keytype: IDL set to object &quot;test-toString&quot; should not throw 
+PASS keygen.keytype: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS keygen.keytype: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS keygen.keytype: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS keygen.keytype: IDL set to &quot;rsa&quot; should not throw 
+PASS keygen.keytype: IDL set to &quot;rsa&quot; followed by getAttribute() 
+PASS keygen.keytype: IDL set to &quot;rsa&quot; followed by IDL get 
+PASS keygen.keytype: IDL set to &quot;xrsa&quot; should not throw 
+PASS keygen.keytype: IDL set to &quot;xrsa&quot; followed by getAttribute() 
+PASS keygen.keytype: IDL set to &quot;rsa\0&quot; should not throw 
+PASS keygen.keytype: IDL set to &quot;rsa\0&quot; followed by getAttribute() 
+PASS keygen.keytype: IDL set to &quot;sa&quot; should not throw 
+PASS keygen.keytype: IDL set to &quot;sa&quot; followed by getAttribute() 
+PASS keygen.keytype: IDL set to &quot;RSA&quot; should not throw 
+PASS keygen.keytype: IDL set to &quot;RSA&quot; followed by getAttribute() 
+PASS keygen.keytype: IDL set to &quot;RSA&quot; followed by IDL get 
+PASS keygen.name: typeof IDL attribute 
+PASS keygen.name: IDL get with DOM attribute unset 
+PASS keygen.name: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS keygen.name: setAttribute() to &quot;&quot; followed by IDL get 
+PASS keygen.name: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS keygen.name: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS keygen.name: setAttribute() to undefined followed by getAttribute() 
+PASS keygen.name: setAttribute() to undefined followed by IDL get 
+PASS keygen.name: setAttribute() to 7 followed by getAttribute() 
+PASS keygen.name: setAttribute() to 7 followed by IDL get 
+PASS keygen.name: setAttribute() to 1.5 followed by getAttribute() 
+PASS keygen.name: setAttribute() to 1.5 followed by IDL get 
+PASS keygen.name: setAttribute() to true followed by getAttribute() 
+PASS keygen.name: setAttribute() to true followed by IDL get 
+PASS keygen.name: setAttribute() to false followed by getAttribute() 
+PASS keygen.name: setAttribute() to false followed by IDL get 
+PASS keygen.name: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS keygen.name: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS keygen.name: setAttribute() to NaN followed by getAttribute() 
+PASS keygen.name: setAttribute() to NaN followed by IDL get 
+PASS keygen.name: setAttribute() to Infinity followed by getAttribute() 
+PASS keygen.name: setAttribute() to Infinity followed by IDL get 
+PASS keygen.name: setAttribute() to -Infinity followed by getAttribute() 
+PASS keygen.name: setAttribute() to -Infinity followed by IDL get 
+PASS keygen.name: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS keygen.name: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS keygen.name: setAttribute() to null followed by getAttribute() 
+PASS keygen.name: setAttribute() to null followed by IDL get 
+PASS keygen.name: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS keygen.name: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS keygen.name: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS keygen.name: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS keygen.name: IDL set to &quot;&quot; should not throw 
+PASS keygen.name: IDL set to &quot;&quot; followed by getAttribute() 
+PASS keygen.name: IDL set to &quot;&quot; followed by IDL get 
+PASS keygen.name: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS keygen.name: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS keygen.name: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS keygen.name: IDL set to undefined should not throw 
+PASS keygen.name: IDL set to undefined followed by getAttribute() 
+PASS keygen.name: IDL set to undefined followed by IDL get 
+PASS keygen.name: IDL set to 7 should not throw 
+PASS keygen.name: IDL set to 7 followed by getAttribute() 
+PASS keygen.name: IDL set to 7 followed by IDL get 
+PASS keygen.name: IDL set to 1.5 should not throw 
+PASS keygen.name: IDL set to 1.5 followed by getAttribute() 
+PASS keygen.name: IDL set to 1.5 followed by IDL get 
+PASS keygen.name: IDL set to true should not throw 
+PASS keygen.name: IDL set to true followed by getAttribute() 
+PASS keygen.name: IDL set to true followed by IDL get 
+PASS keygen.name: IDL set to false should not throw 
+PASS keygen.name: IDL set to false followed by getAttribute() 
+PASS keygen.name: IDL set to false followed by IDL get 
+PASS keygen.name: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS keygen.name: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS keygen.name: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS keygen.name: IDL set to NaN should not throw 
+PASS keygen.name: IDL set to NaN followed by getAttribute() 
+PASS keygen.name: IDL set to NaN followed by IDL get 
+PASS keygen.name: IDL set to Infinity should not throw 
+PASS keygen.name: IDL set to Infinity followed by getAttribute() 
+PASS keygen.name: IDL set to Infinity followed by IDL get 
+PASS keygen.name: IDL set to -Infinity should not throw 
+PASS keygen.name: IDL set to -Infinity followed by getAttribute() 
+PASS keygen.name: IDL set to -Infinity followed by IDL get 
+PASS keygen.name: IDL set to &quot;\0&quot; should not throw 
+PASS keygen.name: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS keygen.name: IDL set to &quot;\0&quot; followed by IDL get 
+PASS keygen.name: IDL set to null should not throw 
+PASS keygen.name: IDL set to null followed by getAttribute() 
+PASS keygen.name: IDL set to null followed by IDL get 
+PASS keygen.name: IDL set to object &quot;test-toString&quot; should not throw 
+PASS keygen.name: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS keygen.name: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS keygen.name: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS keygen.name: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS keygen.name: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS output.title: typeof IDL attribute 
+PASS output.title: IDL get with DOM attribute unset 
+PASS output.title: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS output.title: setAttribute() to &quot;&quot; followed by IDL get 
+PASS output.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS output.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS output.title: setAttribute() to undefined followed by getAttribute() 
+PASS output.title: setAttribute() to undefined followed by IDL get 
+PASS output.title: setAttribute() to 7 followed by getAttribute() 
+PASS output.title: setAttribute() to 7 followed by IDL get 
+PASS output.title: setAttribute() to 1.5 followed by getAttribute() 
+PASS output.title: setAttribute() to 1.5 followed by IDL get 
+PASS output.title: setAttribute() to true followed by getAttribute() 
+PASS output.title: setAttribute() to true followed by IDL get 
+PASS output.title: setAttribute() to false followed by getAttribute() 
+PASS output.title: setAttribute() to false followed by IDL get 
+PASS output.title: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS output.title: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS output.title: setAttribute() to NaN followed by getAttribute() 
+PASS output.title: setAttribute() to NaN followed by IDL get 
+PASS output.title: setAttribute() to Infinity followed by getAttribute() 
+PASS output.title: setAttribute() to Infinity followed by IDL get 
+PASS output.title: setAttribute() to -Infinity followed by getAttribute() 
+PASS output.title: setAttribute() to -Infinity followed by IDL get 
+PASS output.title: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS output.title: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS output.title: setAttribute() to null followed by getAttribute() 
+PASS output.title: setAttribute() to null followed by IDL get 
+PASS output.title: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS output.title: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS output.title: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS output.title: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS output.title: IDL set to &quot;&quot; should not throw 
+PASS output.title: IDL set to &quot;&quot; followed by getAttribute() 
+PASS output.title: IDL set to &quot;&quot; followed by IDL get 
+PASS output.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS output.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS output.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS output.title: IDL set to undefined should not throw 
+PASS output.title: IDL set to undefined followed by getAttribute() 
+PASS output.title: IDL set to undefined followed by IDL get 
+PASS output.title: IDL set to 7 should not throw 
+PASS output.title: IDL set to 7 followed by getAttribute() 
+PASS output.title: IDL set to 7 followed by IDL get 
+PASS output.title: IDL set to 1.5 should not throw 
+PASS output.title: IDL set to 1.5 followed by getAttribute() 
+PASS output.title: IDL set to 1.5 followed by IDL get 
+PASS output.title: IDL set to true should not throw 
+PASS output.title: IDL set to true followed by getAttribute() 
+PASS output.title: IDL set to true followed by IDL get 
+PASS output.title: IDL set to false should not throw 
+PASS output.title: IDL set to false followed by getAttribute() 
+PASS output.title: IDL set to false followed by IDL get 
+PASS output.title: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS output.title: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS output.title: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS output.title: IDL set to NaN should not throw 
+PASS output.title: IDL set to NaN followed by getAttribute() 
+PASS output.title: IDL set to NaN followed by IDL get 
+PASS output.title: IDL set to Infinity should not throw 
+PASS output.title: IDL set to Infinity followed by getAttribute() 
+PASS output.title: IDL set to Infinity followed by IDL get 
+PASS output.title: IDL set to -Infinity should not throw 
+PASS output.title: IDL set to -Infinity followed by getAttribute() 
+PASS output.title: IDL set to -Infinity followed by IDL get 
+PASS output.title: IDL set to &quot;\0&quot; should not throw 
+PASS output.title: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS output.title: IDL set to &quot;\0&quot; followed by IDL get 
+PASS output.title: IDL set to null should not throw 
+PASS output.title: IDL set to null followed by getAttribute() 
+PASS output.title: IDL set to null followed by IDL get 
+PASS output.title: IDL set to object &quot;test-toString&quot; should not throw 
+PASS output.title: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS output.title: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS output.title: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS output.title: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS output.title: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS output.lang: typeof IDL attribute 
+PASS output.lang: IDL get with DOM attribute unset 
+PASS output.lang: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS output.lang: setAttribute() to &quot;&quot; followed by IDL get 
+PASS output.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS output.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS output.lang: setAttribute() to undefined followed by getAttribute() 
+PASS output.lang: setAttribute() to undefined followed by IDL get 
+PASS output.lang: setAttribute() to 7 followed by getAttribute() 
+PASS output.lang: setAttribute() to 7 followed by IDL get 
+PASS output.lang: setAttribute() to 1.5 followed by getAttribute() 
+PASS output.lang: setAttribute() to 1.5 followed by IDL get 
+PASS output.lang: setAttribute() to true followed by getAttribute() 
+PASS output.lang: setAttribute() to true followed by IDL get 
+PASS output.lang: setAttribute() to false followed by getAttribute() 
+PASS output.lang: setAttribute() to false followed by IDL get 
+PASS output.lang: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS output.lang: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS output.lang: setAttribute() to NaN followed by getAttribute() 
+PASS output.lang: setAttribute() to NaN followed by IDL get 
+PASS output.lang: setAttribute() to Infinity followed by getAttribute() 
+PASS output.lang: setAttribute() to Infinity followed by IDL get 
+PASS output.lang: setAttribute() to -Infinity followed by getAttribute() 
+PASS output.lang: setAttribute() to -Infinity followed by IDL get 
+PASS output.lang: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS output.lang: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS output.lang: setAttribute() to null followed by getAttribute() 
+PASS output.lang: setAttribute() to null followed by IDL get 
+PASS output.lang: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS output.lang: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS output.lang: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS output.lang: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS output.lang: IDL set to &quot;&quot; should not throw 
+PASS output.lang: IDL set to &quot;&quot; followed by getAttribute() 
+PASS output.lang: IDL set to &quot;&quot; followed by IDL get 
+PASS output.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS output.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS output.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS output.lang: IDL set to undefined should not throw 
+PASS output.lang: IDL set to undefined followed by getAttribute() 
+PASS output.lang: IDL set to undefined followed by IDL get 
+PASS output.lang: IDL set to 7 should not throw 
+PASS output.lang: IDL set to 7 followed by getAttribute() 
+PASS output.lang: IDL set to 7 followed by IDL get 
+PASS output.lang: IDL set to 1.5 should not throw 
+PASS output.lang: IDL set to 1.5 followed by getAttribute() 
+PASS output.lang: IDL set to 1.5 followed by IDL get 
+PASS output.lang: IDL set to true should not throw 
+PASS output.lang: IDL set to true followed by getAttribute() 
+PASS output.lang: IDL set to true followed by IDL get 
+PASS output.lang: IDL set to false should not throw 
+PASS output.lang: IDL set to false followed by getAttribute() 
+PASS output.lang: IDL set to false followed by IDL get 
+PASS output.lang: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS output.lang: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS output.lang: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS output.lang: IDL set to NaN should not throw 
+PASS output.lang: IDL set to NaN followed by getAttribute() 
+PASS output.lang: IDL set to NaN followed by IDL get 
+PASS output.lang: IDL set to Infinity should not throw 
+PASS output.lang: IDL set to Infinity followed by getAttribute() 
+PASS output.lang: IDL set to Infinity followed by IDL get 
+PASS output.lang: IDL set to -Infinity should not throw 
+PASS output.lang: IDL set to -Infinity followed by getAttribute() 
+PASS output.lang: IDL set to -Infinity followed by IDL get 
+PASS output.lang: IDL set to &quot;\0&quot; should not throw 
+PASS output.lang: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS output.lang: IDL set to &quot;\0&quot; followed by IDL get 
+PASS output.lang: IDL set to null should not throw 
+PASS output.lang: IDL set to null followed by getAttribute() 
+PASS output.lang: IDL set to null followed by IDL get 
+PASS output.lang: IDL set to object &quot;test-toString&quot; should not throw 
+PASS output.lang: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS output.lang: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS output.lang: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS output.lang: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS output.lang: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS output.dir: typeof IDL attribute 
+PASS output.dir: IDL get with DOM attribute unset 
+PASS output.dir: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS output.dir: setAttribute() to &quot;&quot; followed by IDL get 
+PASS output.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS output.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS output.dir: setAttribute() to undefined followed by getAttribute() 
+PASS output.dir: setAttribute() to undefined followed by IDL get 
+PASS output.dir: setAttribute() to 7 followed by getAttribute() 
+PASS output.dir: setAttribute() to 7 followed by IDL get 
+PASS output.dir: setAttribute() to 1.5 followed by getAttribute() 
+PASS output.dir: setAttribute() to 1.5 followed by IDL get 
+PASS output.dir: setAttribute() to true followed by getAttribute() 
+PASS output.dir: setAttribute() to true followed by IDL get 
+PASS output.dir: setAttribute() to false followed by getAttribute() 
+PASS output.dir: setAttribute() to false followed by IDL get 
+PASS output.dir: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS output.dir: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS output.dir: setAttribute() to NaN followed by getAttribute() 
+PASS output.dir: setAttribute() to NaN followed by IDL get 
+PASS output.dir: setAttribute() to Infinity followed by getAttribute() 
+PASS output.dir: setAttribute() to Infinity followed by IDL get 
+PASS output.dir: setAttribute() to -Infinity followed by getAttribute() 
+PASS output.dir: setAttribute() to -Infinity followed by IDL get 
+PASS output.dir: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS output.dir: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS output.dir: setAttribute() to null followed by getAttribute() 
+PASS output.dir: setAttribute() to null followed by IDL get 
+PASS output.dir: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS output.dir: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS output.dir: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS output.dir: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS output.dir: setAttribute() to &quot;ltr&quot; followed by getAttribute() 
+PASS output.dir: setAttribute() to &quot;ltr&quot; followed by IDL get 
+PASS output.dir: setAttribute() to &quot;xltr&quot; followed by getAttribute() 
+PASS output.dir: setAttribute() to &quot;xltr&quot; followed by IDL get 
+PASS output.dir: setAttribute() to &quot;ltr\0&quot; followed by getAttribute() 
+PASS output.dir: setAttribute() to &quot;ltr\0&quot; followed by IDL get 
+PASS output.dir: setAttribute() to &quot;tr&quot; followed by getAttribute() 
+PASS output.dir: setAttribute() to &quot;tr&quot; followed by IDL get 
+PASS output.dir: setAttribute() to &quot;LTR&quot; followed by getAttribute() 
+PASS output.dir: setAttribute() to &quot;LTR&quot; followed by IDL get 
+PASS output.dir: setAttribute() to &quot;rtl&quot; followed by getAttribute() 
+PASS output.dir: setAttribute() to &quot;rtl&quot; followed by IDL get 
+PASS output.dir: setAttribute() to &quot;xrtl&quot; followed by getAttribute() 
+PASS output.dir: setAttribute() to &quot;xrtl&quot; followed by IDL get 
+PASS output.dir: setAttribute() to &quot;rtl\0&quot; followed by getAttribute() 
+PASS output.dir: setAttribute() to &quot;rtl\0&quot; followed by IDL get 
+PASS output.dir: setAttribute() to &quot;tl&quot; followed by getAttribute() 
+PASS output.dir: setAttribute() to &quot;tl&quot; followed by IDL get 
+PASS output.dir: setAttribute() to &quot;RTL&quot; followed by getAttribute() 
+PASS output.dir: setAttribute() to &quot;RTL&quot; followed by IDL get 
+PASS output.dir: setAttribute() to &quot;auto&quot; followed by getAttribute() 
+PASS output.dir: setAttribute() to &quot;auto&quot; followed by IDL get 
+PASS output.dir: setAttribute() to &quot;xauto&quot; followed by getAttribute() 
+PASS output.dir: setAttribute() to &quot;xauto&quot; followed by IDL get 
+PASS output.dir: setAttribute() to &quot;auto\0&quot; followed by getAttribute() 
+PASS output.dir: setAttribute() to &quot;auto\0&quot; followed by IDL get 
+PASS output.dir: setAttribute() to &quot;uto&quot; followed by getAttribute() 
+PASS output.dir: setAttribute() to &quot;uto&quot; followed by IDL get 
+PASS output.dir: setAttribute() to &quot;AUTO&quot; followed by getAttribute() 
+PASS output.dir: setAttribute() to &quot;AUTO&quot; followed by IDL get 
+PASS output.dir: IDL set to &quot;&quot; should not throw 
+PASS output.dir: IDL set to &quot;&quot; followed by getAttribute() 
+PASS output.dir: IDL set to &quot;&quot; followed by IDL get 
+PASS output.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS output.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS output.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS output.dir: IDL set to undefined should not throw 
+PASS output.dir: IDL set to undefined followed by getAttribute() 
+PASS output.dir: IDL set to undefined followed by IDL get 
+PASS output.dir: IDL set to 7 should not throw 
+PASS output.dir: IDL set to 7 followed by getAttribute() 
+PASS output.dir: IDL set to 7 followed by IDL get 
+PASS output.dir: IDL set to 1.5 should not throw 
+PASS output.dir: IDL set to 1.5 followed by getAttribute() 
+PASS output.dir: IDL set to 1.5 followed by IDL get 
+PASS output.dir: IDL set to true should not throw 
+PASS output.dir: IDL set to true followed by getAttribute() 
+PASS output.dir: IDL set to true followed by IDL get 
+PASS output.dir: IDL set to false should not throw 
+PASS output.dir: IDL set to false followed by getAttribute() 
+PASS output.dir: IDL set to false followed by IDL get 
+PASS output.dir: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS output.dir: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS output.dir: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS output.dir: IDL set to NaN should not throw 
+PASS output.dir: IDL set to NaN followed by getAttribute() 
+PASS output.dir: IDL set to NaN followed by IDL get 
+PASS output.dir: IDL set to Infinity should not throw 
+PASS output.dir: IDL set to Infinity followed by getAttribute() 
+PASS output.dir: IDL set to Infinity followed by IDL get 
+PASS output.dir: IDL set to -Infinity should not throw 
+PASS output.dir: IDL set to -Infinity followed by getAttribute() 
+PASS output.dir: IDL set to -Infinity followed by IDL get 
+PASS output.dir: IDL set to &quot;\0&quot; should not throw 
+PASS output.dir: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS output.dir: IDL set to &quot;\0&quot; followed by IDL get 
+PASS output.dir: IDL set to null should not throw 
+PASS output.dir: IDL set to null followed by IDL get 
+PASS output.dir: IDL set to object &quot;test-toString&quot; should not throw 
+PASS output.dir: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS output.dir: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS output.dir: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS output.dir: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS output.dir: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS output.dir: IDL set to &quot;ltr&quot; should not throw 
+PASS output.dir: IDL set to &quot;ltr&quot; followed by getAttribute() 
+PASS output.dir: IDL set to &quot;ltr&quot; followed by IDL get 
+PASS output.dir: IDL set to &quot;xltr&quot; should not throw 
+PASS output.dir: IDL set to &quot;xltr&quot; followed by getAttribute() 
+PASS output.dir: IDL set to &quot;xltr&quot; followed by IDL get 
+PASS output.dir: IDL set to &quot;ltr\0&quot; should not throw 
+PASS output.dir: IDL set to &quot;ltr\0&quot; followed by getAttribute() 
+PASS output.dir: IDL set to &quot;ltr\0&quot; followed by IDL get 
+PASS output.dir: IDL set to &quot;tr&quot; should not throw 
+PASS output.dir: IDL set to &quot;tr&quot; followed by getAttribute() 
+PASS output.dir: IDL set to &quot;tr&quot; followed by IDL get 
+PASS output.dir: IDL set to &quot;LTR&quot; should not throw 
+PASS output.dir: IDL set to &quot;LTR&quot; followed by getAttribute() 
+PASS output.dir: IDL set to &quot;LTR&quot; followed by IDL get 
+PASS output.dir: IDL set to &quot;rtl&quot; should not throw 
+PASS output.dir: IDL set to &quot;rtl&quot; followed by getAttribute() 
+PASS output.dir: IDL set to &quot;rtl&quot; followed by IDL get 
+PASS output.dir: IDL set to &quot;xrtl&quot; should not throw 
+PASS output.dir: IDL set to &quot;xrtl&quot; followed by getAttribute() 
+PASS output.dir: IDL set to &quot;xrtl&quot; followed by IDL get 
+PASS output.dir: IDL set to &quot;rtl\0&quot; should not throw 
+PASS output.dir: IDL set to &quot;rtl\0&quot; followed by getAttribute() 
+PASS output.dir: IDL set to &quot;rtl\0&quot; followed by IDL get 
+PASS output.dir: IDL set to &quot;tl&quot; should not throw 
+PASS output.dir: IDL set to &quot;tl&quot; followed by getAttribute() 
+PASS output.dir: IDL set to &quot;tl&quot; followed by IDL get 
+PASS output.dir: IDL set to &quot;RTL&quot; should not throw 
+PASS output.dir: IDL set to &quot;RTL&quot; followed by getAttribute() 
+PASS output.dir: IDL set to &quot;RTL&quot; followed by IDL get 
+PASS output.dir: IDL set to &quot;auto&quot; should not throw 
+PASS output.dir: IDL set to &quot;auto&quot; followed by getAttribute() 
+PASS output.dir: IDL set to &quot;auto&quot; followed by IDL get 
+PASS output.dir: IDL set to &quot;xauto&quot; should not throw 
+PASS output.dir: IDL set to &quot;xauto&quot; followed by getAttribute() 
+PASS output.dir: IDL set to &quot;xauto&quot; followed by IDL get 
+PASS output.dir: IDL set to &quot;auto\0&quot; should not throw 
+PASS output.dir: IDL set to &quot;auto\0&quot; followed by getAttribute() 
+PASS output.dir: IDL set to &quot;auto\0&quot; followed by IDL get 
+PASS output.dir: IDL set to &quot;uto&quot; should not throw 
+PASS output.dir: IDL set to &quot;uto&quot; followed by getAttribute() 
+PASS output.dir: IDL set to &quot;uto&quot; followed by IDL get 
+PASS output.dir: IDL set to &quot;AUTO&quot; should not throw 
+PASS output.dir: IDL set to &quot;AUTO&quot; followed by getAttribute() 
+PASS output.dir: IDL set to &quot;AUTO&quot; followed by IDL get 
+PASS output.className (&lt;output class&gt;): typeof IDL attribute 
+PASS output.className (&lt;output class&gt;): IDL get with DOM attribute unset 
+PASS output.className (&lt;output class&gt;): setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): setAttribute() to &quot;&quot; followed by IDL get 
+PASS output.className (&lt;output class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS output.className (&lt;output class&gt;): setAttribute() to undefined followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): setAttribute() to undefined followed by IDL get 
+PASS output.className (&lt;output class&gt;): setAttribute() to 7 followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): setAttribute() to 7 followed by IDL get 
+PASS output.className (&lt;output class&gt;): setAttribute() to 1.5 followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): setAttribute() to 1.5 followed by IDL get 
+PASS output.className (&lt;output class&gt;): setAttribute() to true followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): setAttribute() to true followed by IDL get 
+PASS output.className (&lt;output class&gt;): setAttribute() to false followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): setAttribute() to false followed by IDL get 
+PASS output.className (&lt;output class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS output.className (&lt;output class&gt;): setAttribute() to NaN followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): setAttribute() to NaN followed by IDL get 
+PASS output.className (&lt;output class&gt;): setAttribute() to Infinity followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): setAttribute() to Infinity followed by IDL get 
+PASS output.className (&lt;output class&gt;): setAttribute() to -Infinity followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): setAttribute() to -Infinity followed by IDL get 
+PASS output.className (&lt;output class&gt;): setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS output.className (&lt;output class&gt;): setAttribute() to null followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): setAttribute() to null followed by IDL get 
+PASS output.className (&lt;output class&gt;): setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS output.className (&lt;output class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS output.className (&lt;output class&gt;): IDL set to &quot;&quot; should not throw 
+PASS output.className (&lt;output class&gt;): IDL set to &quot;&quot; followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): IDL set to &quot;&quot; followed by IDL get 
+PASS output.className (&lt;output class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS output.className (&lt;output class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS output.className (&lt;output class&gt;): IDL set to undefined should not throw 
+PASS output.className (&lt;output class&gt;): IDL set to undefined followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): IDL set to undefined followed by IDL get 
+PASS output.className (&lt;output class&gt;): IDL set to 7 should not throw 
+PASS output.className (&lt;output class&gt;): IDL set to 7 followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): IDL set to 7 followed by IDL get 
+PASS output.className (&lt;output class&gt;): IDL set to 1.5 should not throw 
+PASS output.className (&lt;output class&gt;): IDL set to 1.5 followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): IDL set to 1.5 followed by IDL get 
+PASS output.className (&lt;output class&gt;): IDL set to true should not throw 
+PASS output.className (&lt;output class&gt;): IDL set to true followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): IDL set to true followed by IDL get 
+PASS output.className (&lt;output class&gt;): IDL set to false should not throw 
+PASS output.className (&lt;output class&gt;): IDL set to false followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): IDL set to false followed by IDL get 
+PASS output.className (&lt;output class&gt;): IDL set to object &quot;[object Object]&quot; should not throw 
+PASS output.className (&lt;output class&gt;): IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS output.className (&lt;output class&gt;): IDL set to NaN should not throw 
+PASS output.className (&lt;output class&gt;): IDL set to NaN followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): IDL set to NaN followed by IDL get 
+PASS output.className (&lt;output class&gt;): IDL set to Infinity should not throw 
+PASS output.className (&lt;output class&gt;): IDL set to Infinity followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): IDL set to Infinity followed by IDL get 
+PASS output.className (&lt;output class&gt;): IDL set to -Infinity should not throw 
+PASS output.className (&lt;output class&gt;): IDL set to -Infinity followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): IDL set to -Infinity followed by IDL get 
+PASS output.className (&lt;output class&gt;): IDL set to &quot;\0&quot; should not throw 
+PASS output.className (&lt;output class&gt;): IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): IDL set to &quot;\0&quot; followed by IDL get 
+PASS output.className (&lt;output class&gt;): IDL set to null should not throw 
+PASS output.className (&lt;output class&gt;): IDL set to null followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): IDL set to null followed by IDL get 
+PASS output.className (&lt;output class&gt;): IDL set to object &quot;test-toString&quot; should not throw 
+PASS output.className (&lt;output class&gt;): IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS output.className (&lt;output class&gt;): IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS output.className (&lt;output class&gt;): IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS output.className (&lt;output class&gt;): IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS output.hidden: typeof IDL attribute 
+PASS output.hidden: IDL get with DOM attribute unset 
+PASS output.hidden: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS output.hidden: setAttribute() to &quot;&quot; followed by IDL get 
+PASS output.hidden: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS output.hidden: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS output.hidden: setAttribute() to undefined followed by getAttribute() 
+PASS output.hidden: setAttribute() to undefined followed by IDL get 
+PASS output.hidden: setAttribute() to null followed by getAttribute() 
+PASS output.hidden: setAttribute() to null followed by IDL get 
+PASS output.hidden: setAttribute() to 7 followed by getAttribute() 
+PASS output.hidden: setAttribute() to 7 followed by IDL get 
+PASS output.hidden: setAttribute() to 1.5 followed by getAttribute() 
+PASS output.hidden: setAttribute() to 1.5 followed by IDL get 
+PASS output.hidden: setAttribute() to true followed by getAttribute() 
+PASS output.hidden: setAttribute() to true followed by IDL get 
+PASS output.hidden: setAttribute() to false followed by getAttribute() 
+PASS output.hidden: setAttribute() to false followed by IDL get 
+PASS output.hidden: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS output.hidden: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS output.hidden: setAttribute() to NaN followed by getAttribute() 
+PASS output.hidden: setAttribute() to NaN followed by IDL get 
+PASS output.hidden: setAttribute() to Infinity followed by getAttribute() 
+PASS output.hidden: setAttribute() to Infinity followed by IDL get 
+PASS output.hidden: setAttribute() to -Infinity followed by getAttribute() 
+PASS output.hidden: setAttribute() to -Infinity followed by IDL get 
+PASS output.hidden: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS output.hidden: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS output.hidden: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS output.hidden: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS output.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS output.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS output.hidden: setAttribute() to &quot;hidden&quot; followed by getAttribute() 
+PASS output.hidden: setAttribute() to &quot;hidden&quot; followed by IDL get 
+PASS output.hidden: IDL set to &quot;&quot; should not throw 
+PASS output.hidden: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS output.hidden: IDL set to &quot;&quot; followed by IDL get 
+PASS output.hidden: IDL set to &quot; foo &quot; should not throw 
+PASS output.hidden: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS output.hidden: IDL set to &quot; foo &quot; followed by IDL get 
+PASS output.hidden: IDL set to undefined should not throw 
+PASS output.hidden: IDL set to undefined followed by hasAttribute() 
+PASS output.hidden: IDL set to undefined followed by IDL get 
+PASS output.hidden: IDL set to null should not throw 
+PASS output.hidden: IDL set to null followed by hasAttribute() 
+PASS output.hidden: IDL set to null followed by IDL get 
+PASS output.hidden: IDL set to 7 should not throw 
+PASS output.hidden: IDL set to 7 followed by hasAttribute() 
+PASS output.hidden: IDL set to 7 followed by IDL get 
+PASS output.hidden: IDL set to 1.5 should not throw 
+PASS output.hidden: IDL set to 1.5 followed by hasAttribute() 
+PASS output.hidden: IDL set to 1.5 followed by IDL get 
+PASS output.hidden: IDL set to true should not throw 
+PASS output.hidden: IDL set to true followed by hasAttribute() 
+PASS output.hidden: IDL set to true followed by IDL get 
+PASS output.hidden: IDL set to false should not throw 
+PASS output.hidden: IDL set to false followed by hasAttribute() 
+PASS output.hidden: IDL set to false followed by IDL get 
+PASS output.hidden: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS output.hidden: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS output.hidden: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS output.hidden: IDL set to NaN should not throw 
+PASS output.hidden: IDL set to NaN followed by hasAttribute() 
+PASS output.hidden: IDL set to NaN followed by IDL get 
+PASS output.hidden: IDL set to Infinity should not throw 
+PASS output.hidden: IDL set to Infinity followed by hasAttribute() 
+PASS output.hidden: IDL set to Infinity followed by IDL get 
+PASS output.hidden: IDL set to -Infinity should not throw 
+PASS output.hidden: IDL set to -Infinity followed by hasAttribute() 
+PASS output.hidden: IDL set to -Infinity followed by IDL get 
+PASS output.hidden: IDL set to &quot;\0&quot; should not throw 
+PASS output.hidden: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS output.hidden: IDL set to &quot;\0&quot; followed by IDL get 
+PASS output.hidden: IDL set to object &quot;test-toString&quot; should not throw 
+PASS output.hidden: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS output.hidden: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS output.hidden: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS output.hidden: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS output.hidden: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS output.accessKey: typeof IDL attribute 
+PASS output.accessKey: IDL get with DOM attribute unset 
+PASS output.accessKey: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS output.accessKey: setAttribute() to &quot;&quot; followed by IDL get 
+PASS output.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS output.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS output.accessKey: setAttribute() to undefined followed by getAttribute() 
+PASS output.accessKey: setAttribute() to undefined followed by IDL get 
+PASS output.accessKey: setAttribute() to 7 followed by getAttribute() 
+PASS output.accessKey: setAttribute() to 7 followed by IDL get 
+PASS output.accessKey: setAttribute() to 1.5 followed by getAttribute() 
+PASS output.accessKey: setAttribute() to 1.5 followed by IDL get 
+PASS output.accessKey: setAttribute() to true followed by getAttribute() 
+PASS output.accessKey: setAttribute() to true followed by IDL get 
+PASS output.accessKey: setAttribute() to false followed by getAttribute() 
+PASS output.accessKey: setAttribute() to false followed by IDL get 
+PASS output.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS output.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS output.accessKey: setAttribute() to NaN followed by getAttribute() 
+PASS output.accessKey: setAttribute() to NaN followed by IDL get 
+PASS output.accessKey: setAttribute() to Infinity followed by getAttribute() 
+PASS output.accessKey: setAttribute() to Infinity followed by IDL get 
+PASS output.accessKey: setAttribute() to -Infinity followed by getAttribute() 
+PASS output.accessKey: setAttribute() to -Infinity followed by IDL get 
+PASS output.accessKey: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS output.accessKey: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS output.accessKey: setAttribute() to null followed by getAttribute() 
+PASS output.accessKey: setAttribute() to null followed by IDL get 
+PASS output.accessKey: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS output.accessKey: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS output.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS output.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS output.accessKey: IDL set to &quot;&quot; should not throw 
+PASS output.accessKey: IDL set to &quot;&quot; followed by getAttribute() 
+PASS output.accessKey: IDL set to &quot;&quot; followed by IDL get 
+PASS output.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS output.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS output.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS output.accessKey: IDL set to undefined should not throw 
+PASS output.accessKey: IDL set to undefined followed by getAttribute() 
+PASS output.accessKey: IDL set to undefined followed by IDL get 
+PASS output.accessKey: IDL set to 7 should not throw 
+PASS output.accessKey: IDL set to 7 followed by getAttribute() 
+PASS output.accessKey: IDL set to 7 followed by IDL get 
+PASS output.accessKey: IDL set to 1.5 should not throw 
+PASS output.accessKey: IDL set to 1.5 followed by getAttribute() 
+PASS output.accessKey: IDL set to 1.5 followed by IDL get 
+PASS output.accessKey: IDL set to true should not throw 
+PASS output.accessKey: IDL set to true followed by getAttribute() 
+PASS output.accessKey: IDL set to true followed by IDL get 
+PASS output.accessKey: IDL set to false should not throw 
+PASS output.accessKey: IDL set to false followed by getAttribute() 
+PASS output.accessKey: IDL set to false followed by IDL get 
+PASS output.accessKey: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS output.accessKey: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS output.accessKey: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS output.accessKey: IDL set to NaN should not throw 
+PASS output.accessKey: IDL set to NaN followed by getAttribute() 
+PASS output.accessKey: IDL set to NaN followed by IDL get 
+PASS output.accessKey: IDL set to Infinity should not throw 
+PASS output.accessKey: IDL set to Infinity followed by getAttribute() 
+PASS output.accessKey: IDL set to Infinity followed by IDL get 
+PASS output.accessKey: IDL set to -Infinity should not throw 
+PASS output.accessKey: IDL set to -Infinity followed by getAttribute() 
+PASS output.accessKey: IDL set to -Infinity followed by IDL get 
+PASS output.accessKey: IDL set to &quot;\0&quot; should not throw 
+PASS output.accessKey: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS output.accessKey: IDL set to &quot;\0&quot; followed by IDL get 
+PASS output.accessKey: IDL set to null should not throw 
+PASS output.accessKey: IDL set to null followed by getAttribute() 
+PASS output.accessKey: IDL set to null followed by IDL get 
+PASS output.accessKey: IDL set to object &quot;test-toString&quot; should not throw 
+PASS output.accessKey: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS output.accessKey: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS output.accessKey: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS output.accessKey: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS output.accessKey: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS output.tabIndex: typeof IDL attribute 
+PASS output.tabIndex: setAttribute() to -36 followed by getAttribute() 
+PASS output.tabIndex: setAttribute() to -36 followed by IDL get 
+PASS output.tabIndex: setAttribute() to -1 followed by getAttribute() 
+PASS output.tabIndex: setAttribute() to -1 followed by IDL get 
+PASS output.tabIndex: setAttribute() to 0 followed by getAttribute() 
+PASS output.tabIndex: setAttribute() to 0 followed by IDL get 
+PASS output.tabIndex: setAttribute() to 1 followed by getAttribute() 
+PASS output.tabIndex: setAttribute() to 1 followed by IDL get 
+PASS output.tabIndex: setAttribute() to 2147483647 followed by getAttribute() 
+PASS output.tabIndex: setAttribute() to 2147483647 followed by IDL get 
+PASS output.tabIndex: setAttribute() to -2147483648 followed by getAttribute() 
+PASS output.tabIndex: setAttribute() to -2147483648 followed by IDL get 
+PASS output.tabIndex: setAttribute() to &quot;-1&quot; followed by getAttribute() 
+PASS output.tabIndex: setAttribute() to &quot;-1&quot; followed by IDL get 
+PASS output.tabIndex: setAttribute() to &quot;-0&quot; followed by getAttribute() 
+PASS output.tabIndex: setAttribute() to &quot;-0&quot; followed by IDL get 
+PASS output.tabIndex: setAttribute() to &quot;0&quot; followed by getAttribute() 
+PASS output.tabIndex: setAttribute() to &quot;0&quot; followed by IDL get 
+PASS output.tabIndex: setAttribute() to &quot;1&quot; followed by getAttribute() 
+PASS output.tabIndex: setAttribute() to &quot;1&quot; followed by IDL get 
+PASS output.tabIndex: setAttribute() to &quot;\t7&quot; followed by getAttribute() 
+PASS output.tabIndex: setAttribute() to &quot;\t7&quot; followed by IDL get 
+PASS output.tabIndex: setAttribute() to &quot;\f7&quot; followed by getAttribute() 
+PASS output.tabIndex: setAttribute() to &quot;\f7&quot; followed by IDL get 
+PASS output.tabIndex: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS output.tabIndex: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS output.tabIndex: setAttribute() to &quot;\n7&quot; followed by getAttribute() 
+PASS output.tabIndex: setAttribute() to &quot;\n7&quot; followed by IDL get 
+PASS output.tabIndex: setAttribute() to &quot;\r7&quot; followed by getAttribute() 
+PASS output.tabIndex: setAttribute() to &quot;\r7&quot; followed by IDL get 
+PASS output.tabIndex: setAttribute() to 1.5 followed by getAttribute() 
+PASS output.tabIndex: setAttribute() to 1.5 followed by IDL get 
+PASS output.tabIndex: setAttribute() to object &quot;2&quot; followed by getAttribute() 
+PASS output.tabIndex: setAttribute() to object &quot;2&quot; followed by IDL get 
+PASS output.tabIndex: IDL set to -36 should not throw 
+PASS output.tabIndex: IDL set to -36 followed by getAttribute() 
+PASS output.tabIndex: IDL set to -36 followed by IDL get 
+PASS output.tabIndex: IDL set to -1 should not throw 
+PASS output.tabIndex: IDL set to -1 followed by getAttribute() 
+PASS output.tabIndex: IDL set to -1 followed by IDL get 
+PASS output.tabIndex: IDL set to 0 should not throw 
+PASS output.tabIndex: IDL set to 0 followed by getAttribute() 
+PASS output.tabIndex: IDL set to 0 followed by IDL get 
+PASS output.tabIndex: IDL set to 1 should not throw 
+PASS output.tabIndex: IDL set to 1 followed by getAttribute() 
+PASS output.tabIndex: IDL set to 1 followed by IDL get 
+PASS output.tabIndex: IDL set to 2147483647 should not throw 
+PASS output.tabIndex: IDL set to 2147483647 followed by getAttribute() 
+PASS output.tabIndex: IDL set to 2147483647 followed by IDL get 
+PASS output.tabIndex: IDL set to -2147483648 should not throw 
+PASS output.tabIndex: IDL set to -2147483648 followed by getAttribute() 
+PASS output.tabIndex: IDL set to -2147483648 followed by IDL get 
+PASS output.name: typeof IDL attribute 
+PASS output.name: IDL get with DOM attribute unset 
+PASS output.name: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS output.name: setAttribute() to &quot;&quot; followed by IDL get 
+PASS output.name: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS output.name: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS output.name: setAttribute() to undefined followed by getAttribute() 
+PASS output.name: setAttribute() to undefined followed by IDL get 
+PASS output.name: setAttribute() to 7 followed by getAttribute() 
+PASS output.name: setAttribute() to 7 followed by IDL get 
+PASS output.name: setAttribute() to 1.5 followed by getAttribute() 
+PASS output.name: setAttribute() to 1.5 followed by IDL get 
+PASS output.name: setAttribute() to true followed by getAttribute() 
+PASS output.name: setAttribute() to true followed by IDL get 
+PASS output.name: setAttribute() to false followed by getAttribute() 
+PASS output.name: setAttribute() to false followed by IDL get 
+PASS output.name: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS output.name: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS output.name: setAttribute() to NaN followed by getAttribute() 
+PASS output.name: setAttribute() to NaN followed by IDL get 
+PASS output.name: setAttribute() to Infinity followed by getAttribute() 
+PASS output.name: setAttribute() to Infinity followed by IDL get 
+PASS output.name: setAttribute() to -Infinity followed by getAttribute() 
+PASS output.name: setAttribute() to -Infinity followed by IDL get 
+PASS output.name: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS output.name: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS output.name: setAttribute() to null followed by getAttribute() 
+PASS output.name: setAttribute() to null followed by IDL get 
+PASS output.name: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS output.name: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS output.name: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS output.name: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS output.name: IDL set to &quot;&quot; should not throw 
+PASS output.name: IDL set to &quot;&quot; followed by getAttribute() 
+PASS output.name: IDL set to &quot;&quot; followed by IDL get 
+PASS output.name: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS output.name: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS output.name: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS output.name: IDL set to undefined should not throw 
+PASS output.name: IDL set to undefined followed by getAttribute() 
+PASS output.name: IDL set to undefined followed by IDL get 
+PASS output.name: IDL set to 7 should not throw 
+PASS output.name: IDL set to 7 followed by getAttribute() 
+PASS output.name: IDL set to 7 followed by IDL get 
+PASS output.name: IDL set to 1.5 should not throw 
+PASS output.name: IDL set to 1.5 followed by getAttribute() 
+PASS output.name: IDL set to 1.5 followed by IDL get 
+PASS output.name: IDL set to true should not throw 
+PASS output.name: IDL set to true followed by getAttribute() 
+PASS output.name: IDL set to true followed by IDL get 
+PASS output.name: IDL set to false should not throw 
+PASS output.name: IDL set to false followed by getAttribute() 
+PASS output.name: IDL set to false followed by IDL get 
+PASS output.name: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS output.name: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS output.name: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS output.name: IDL set to NaN should not throw 
+PASS output.name: IDL set to NaN followed by getAttribute() 
+PASS output.name: IDL set to NaN followed by IDL get 
+PASS output.name: IDL set to Infinity should not throw 
+PASS output.name: IDL set to Infinity followed by getAttribute() 
+PASS output.name: IDL set to Infinity followed by IDL get 
+PASS output.name: IDL set to -Infinity should not throw 
+PASS output.name: IDL set to -Infinity followed by getAttribute() 
+PASS output.name: IDL set to -Infinity followed by IDL get 
+PASS output.name: IDL set to &quot;\0&quot; should not throw 
+PASS output.name: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS output.name: IDL set to &quot;\0&quot; followed by IDL get 
+PASS output.name: IDL set to null should not throw 
+PASS output.name: IDL set to null followed by getAttribute() 
+PASS output.name: IDL set to null followed by IDL get 
+PASS output.name: IDL set to object &quot;test-toString&quot; should not throw 
+PASS output.name: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS output.name: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS output.name: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS output.name: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS output.name: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS progress.title: typeof IDL attribute 
+PASS progress.title: IDL get with DOM attribute unset 
+PASS progress.title: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS progress.title: setAttribute() to &quot;&quot; followed by IDL get 
+PASS progress.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS progress.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS progress.title: setAttribute() to undefined followed by getAttribute() 
+PASS progress.title: setAttribute() to undefined followed by IDL get 
+PASS progress.title: setAttribute() to 7 followed by getAttribute() 
+PASS progress.title: setAttribute() to 7 followed by IDL get 
+PASS progress.title: setAttribute() to 1.5 followed by getAttribute() 
+PASS progress.title: setAttribute() to 1.5 followed by IDL get 
+PASS progress.title: setAttribute() to true followed by getAttribute() 
+PASS progress.title: setAttribute() to true followed by IDL get 
+PASS progress.title: setAttribute() to false followed by getAttribute() 
+PASS progress.title: setAttribute() to false followed by IDL get 
+PASS progress.title: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS progress.title: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS progress.title: setAttribute() to NaN followed by getAttribute() 
+PASS progress.title: setAttribute() to NaN followed by IDL get 
+PASS progress.title: setAttribute() to Infinity followed by getAttribute() 
+PASS progress.title: setAttribute() to Infinity followed by IDL get 
+PASS progress.title: setAttribute() to -Infinity followed by getAttribute() 
+PASS progress.title: setAttribute() to -Infinity followed by IDL get 
+PASS progress.title: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS progress.title: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS progress.title: setAttribute() to null followed by getAttribute() 
+PASS progress.title: setAttribute() to null followed by IDL get 
+PASS progress.title: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS progress.title: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS progress.title: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS progress.title: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS progress.title: IDL set to &quot;&quot; should not throw 
+PASS progress.title: IDL set to &quot;&quot; followed by getAttribute() 
+PASS progress.title: IDL set to &quot;&quot; followed by IDL get 
+PASS progress.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS progress.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS progress.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS progress.title: IDL set to undefined should not throw 
+PASS progress.title: IDL set to undefined followed by getAttribute() 
+PASS progress.title: IDL set to undefined followed by IDL get 
+PASS progress.title: IDL set to 7 should not throw 
+PASS progress.title: IDL set to 7 followed by getAttribute() 
+PASS progress.title: IDL set to 7 followed by IDL get 
+PASS progress.title: IDL set to 1.5 should not throw 
+PASS progress.title: IDL set to 1.5 followed by getAttribute() 
+PASS progress.title: IDL set to 1.5 followed by IDL get 
+PASS progress.title: IDL set to true should not throw 
+PASS progress.title: IDL set to true followed by getAttribute() 
+PASS progress.title: IDL set to true followed by IDL get 
+PASS progress.title: IDL set to false should not throw 
+PASS progress.title: IDL set to false followed by getAttribute() 
+PASS progress.title: IDL set to false followed by IDL get 
+PASS progress.title: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS progress.title: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS progress.title: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS progress.title: IDL set to NaN should not throw 
+PASS progress.title: IDL set to NaN followed by getAttribute() 
+PASS progress.title: IDL set to NaN followed by IDL get 
+PASS progress.title: IDL set to Infinity should not throw 
+PASS progress.title: IDL set to Infinity followed by getAttribute() 
+PASS progress.title: IDL set to Infinity followed by IDL get 
+PASS progress.title: IDL set to -Infinity should not throw 
+PASS progress.title: IDL set to -Infinity followed by getAttribute() 
+PASS progress.title: IDL set to -Infinity followed by IDL get 
+PASS progress.title: IDL set to &quot;\0&quot; should not throw 
+PASS progress.title: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS progress.title: IDL set to &quot;\0&quot; followed by IDL get 
+PASS progress.title: IDL set to null should not throw 
+PASS progress.title: IDL set to null followed by getAttribute() 
+PASS progress.title: IDL set to null followed by IDL get 
+PASS progress.title: IDL set to object &quot;test-toString&quot; should not throw 
+PASS progress.title: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS progress.title: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS progress.title: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS progress.title: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS progress.title: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS progress.lang: typeof IDL attribute 
+PASS progress.lang: IDL get with DOM attribute unset 
+PASS progress.lang: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS progress.lang: setAttribute() to &quot;&quot; followed by IDL get 
+PASS progress.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS progress.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS progress.lang: setAttribute() to undefined followed by getAttribute() 
+PASS progress.lang: setAttribute() to undefined followed by IDL get 
+PASS progress.lang: setAttribute() to 7 followed by getAttribute() 
+PASS progress.lang: setAttribute() to 7 followed by IDL get 
+PASS progress.lang: setAttribute() to 1.5 followed by getAttribute() 
+PASS progress.lang: setAttribute() to 1.5 followed by IDL get 
+PASS progress.lang: setAttribute() to true followed by getAttribute() 
+PASS progress.lang: setAttribute() to true followed by IDL get 
+PASS progress.lang: setAttribute() to false followed by getAttribute() 
+PASS progress.lang: setAttribute() to false followed by IDL get 
+PASS progress.lang: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS progress.lang: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS progress.lang: setAttribute() to NaN followed by getAttribute() 
+PASS progress.lang: setAttribute() to NaN followed by IDL get 
+PASS progress.lang: setAttribute() to Infinity followed by getAttribute() 
+PASS progress.lang: setAttribute() to Infinity followed by IDL get 
+PASS progress.lang: setAttribute() to -Infinity followed by getAttribute() 
+PASS progress.lang: setAttribute() to -Infinity followed by IDL get 
+PASS progress.lang: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS progress.lang: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS progress.lang: setAttribute() to null followed by getAttribute() 
+PASS progress.lang: setAttribute() to null followed by IDL get 
+PASS progress.lang: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS progress.lang: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS progress.lang: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS progress.lang: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS progress.lang: IDL set to &quot;&quot; should not throw 
+PASS progress.lang: IDL set to &quot;&quot; followed by getAttribute() 
+PASS progress.lang: IDL set to &quot;&quot; followed by IDL get 
+PASS progress.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS progress.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS progress.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS progress.lang: IDL set to undefined should not throw 
+PASS progress.lang: IDL set to undefined followed by getAttribute() 
+PASS progress.lang: IDL set to undefined followed by IDL get 
+PASS progress.lang: IDL set to 7 should not throw 
+PASS progress.lang: IDL set to 7 followed by getAttribute() 
+PASS progress.lang: IDL set to 7 followed by IDL get 
+PASS progress.lang: IDL set to 1.5 should not throw 
+PASS progress.lang: IDL set to 1.5 followed by getAttribute() 
+PASS progress.lang: IDL set to 1.5 followed by IDL get 
+PASS progress.lang: IDL set to true should not throw 
+PASS progress.lang: IDL set to true followed by getAttribute() 
+PASS progress.lang: IDL set to true followed by IDL get 
+PASS progress.lang: IDL set to false should not throw 
+PASS progress.lang: IDL set to false followed by getAttribute() 
+PASS progress.lang: IDL set to false followed by IDL get 
+PASS progress.lang: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS progress.lang: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS progress.lang: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS progress.lang: IDL set to NaN should not throw 
+PASS progress.lang: IDL set to NaN followed by getAttribute() 
+PASS progress.lang: IDL set to NaN followed by IDL get 
+PASS progress.lang: IDL set to Infinity should not throw 
+PASS progress.lang: IDL set to Infinity followed by getAttribute() 
+PASS progress.lang: IDL set to Infinity followed by IDL get 
+PASS progress.lang: IDL set to -Infinity should not throw 
+PASS progress.lang: IDL set to -Infinity followed by getAttribute() 
+PASS progress.lang: IDL set to -Infinity followed by IDL get 
+PASS progress.lang: IDL set to &quot;\0&quot; should not throw 
+PASS progress.lang: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS progress.lang: IDL set to &quot;\0&quot; followed by IDL get 
+PASS progress.lang: IDL set to null should not throw 
+PASS progress.lang: IDL set to null followed by getAttribute() 
+PASS progress.lang: IDL set to null followed by IDL get 
+PASS progress.lang: IDL set to object &quot;test-toString&quot; should not throw 
+PASS progress.lang: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS progress.lang: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS progress.lang: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS progress.lang: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS progress.lang: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS progress.dir: typeof IDL attribute 
+PASS progress.dir: IDL get with DOM attribute unset 
+PASS progress.dir: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS progress.dir: setAttribute() to &quot;&quot; followed by IDL get 
+PASS progress.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS progress.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS progress.dir: setAttribute() to undefined followed by getAttribute() 
+PASS progress.dir: setAttribute() to undefined followed by IDL get 
+PASS progress.dir: setAttribute() to 7 followed by getAttribute() 
+PASS progress.dir: setAttribute() to 7 followed by IDL get 
+PASS progress.dir: setAttribute() to 1.5 followed by getAttribute() 
+PASS progress.dir: setAttribute() to 1.5 followed by IDL get 
+PASS progress.dir: setAttribute() to true followed by getAttribute() 
+PASS progress.dir: setAttribute() to true followed by IDL get 
+PASS progress.dir: setAttribute() to false followed by getAttribute() 
+PASS progress.dir: setAttribute() to false followed by IDL get 
+PASS progress.dir: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS progress.dir: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS progress.dir: setAttribute() to NaN followed by getAttribute() 
+PASS progress.dir: setAttribute() to NaN followed by IDL get 
+PASS progress.dir: setAttribute() to Infinity followed by getAttribute() 
+PASS progress.dir: setAttribute() to Infinity followed by IDL get 
+PASS progress.dir: setAttribute() to -Infinity followed by getAttribute() 
+PASS progress.dir: setAttribute() to -Infinity followed by IDL get 
+PASS progress.dir: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS progress.dir: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS progress.dir: setAttribute() to null followed by getAttribute() 
+PASS progress.dir: setAttribute() to null followed by IDL get 
+PASS progress.dir: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS progress.dir: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS progress.dir: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS progress.dir: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS progress.dir: setAttribute() to &quot;ltr&quot; followed by getAttribute() 
+PASS progress.dir: setAttribute() to &quot;ltr&quot; followed by IDL get 
+PASS progress.dir: setAttribute() to &quot;xltr&quot; followed by getAttribute() 
+PASS progress.dir: setAttribute() to &quot;xltr&quot; followed by IDL get 
+PASS progress.dir: setAttribute() to &quot;ltr\0&quot; followed by getAttribute() 
+PASS progress.dir: setAttribute() to &quot;ltr\0&quot; followed by IDL get 
+PASS progress.dir: setAttribute() to &quot;tr&quot; followed by getAttribute() 
+PASS progress.dir: setAttribute() to &quot;tr&quot; followed by IDL get 
+PASS progress.dir: setAttribute() to &quot;LTR&quot; followed by getAttribute() 
+PASS progress.dir: setAttribute() to &quot;LTR&quot; followed by IDL get 
+PASS progress.dir: setAttribute() to &quot;rtl&quot; followed by getAttribute() 
+PASS progress.dir: setAttribute() to &quot;rtl&quot; followed by IDL get 
+PASS progress.dir: setAttribute() to &quot;xrtl&quot; followed by getAttribute() 
+PASS progress.dir: setAttribute() to &quot;xrtl&quot; followed by IDL get 
+PASS progress.dir: setAttribute() to &quot;rtl\0&quot; followed by getAttribute() 
+PASS progress.dir: setAttribute() to &quot;rtl\0&quot; followed by IDL get 
+PASS progress.dir: setAttribute() to &quot;tl&quot; followed by getAttribute() 
+PASS progress.dir: setAttribute() to &quot;tl&quot; followed by IDL get 
+PASS progress.dir: setAttribute() to &quot;RTL&quot; followed by getAttribute() 
+PASS progress.dir: setAttribute() to &quot;RTL&quot; followed by IDL get 
+PASS progress.dir: setAttribute() to &quot;auto&quot; followed by getAttribute() 
+PASS progress.dir: setAttribute() to &quot;auto&quot; followed by IDL get 
+PASS progress.dir: setAttribute() to &quot;xauto&quot; followed by getAttribute() 
+PASS progress.dir: setAttribute() to &quot;xauto&quot; followed by IDL get 
+PASS progress.dir: setAttribute() to &quot;auto\0&quot; followed by getAttribute() 
+PASS progress.dir: setAttribute() to &quot;auto\0&quot; followed by IDL get 
+PASS progress.dir: setAttribute() to &quot;uto&quot; followed by getAttribute() 
+PASS progress.dir: setAttribute() to &quot;uto&quot; followed by IDL get 
+PASS progress.dir: setAttribute() to &quot;AUTO&quot; followed by getAttribute() 
+PASS progress.dir: setAttribute() to &quot;AUTO&quot; followed by IDL get 
+PASS progress.dir: IDL set to &quot;&quot; should not throw 
+PASS progress.dir: IDL set to &quot;&quot; followed by getAttribute() 
+PASS progress.dir: IDL set to &quot;&quot; followed by IDL get 
+PASS progress.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS progress.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS progress.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS progress.dir: IDL set to undefined should not throw 
+PASS progress.dir: IDL set to undefined followed by getAttribute() 
+PASS progress.dir: IDL set to undefined followed by IDL get 
+PASS progress.dir: IDL set to 7 should not throw 
+PASS progress.dir: IDL set to 7 followed by getAttribute() 
+PASS progress.dir: IDL set to 7 followed by IDL get 
+PASS progress.dir: IDL set to 1.5 should not throw 
+PASS progress.dir: IDL set to 1.5 followed by getAttribute() 
+PASS progress.dir: IDL set to 1.5 followed by IDL get 
+PASS progress.dir: IDL set to true should not throw 
+PASS progress.dir: IDL set to true followed by getAttribute() 
+PASS progress.dir: IDL set to true followed by IDL get 
+PASS progress.dir: IDL set to false should not throw 
+PASS progress.dir: IDL set to false followed by getAttribute() 
+PASS progress.dir: IDL set to false followed by IDL get 
+PASS progress.dir: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS progress.dir: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS progress.dir: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS progress.dir: IDL set to NaN should not throw 
+PASS progress.dir: IDL set to NaN followed by getAttribute() 
+PASS progress.dir: IDL set to NaN followed by IDL get 
+PASS progress.dir: IDL set to Infinity should not throw 
+PASS progress.dir: IDL set to Infinity followed by getAttribute() 
+PASS progress.dir: IDL set to Infinity followed by IDL get 
+PASS progress.dir: IDL set to -Infinity should not throw 
+PASS progress.dir: IDL set to -Infinity followed by getAttribute() 
+PASS progress.dir: IDL set to -Infinity followed by IDL get 
+PASS progress.dir: IDL set to &quot;\0&quot; should not throw 
+PASS progress.dir: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS progress.dir: IDL set to &quot;\0&quot; followed by IDL get 
+PASS progress.dir: IDL set to null should not throw 
+PASS progress.dir: IDL set to null followed by IDL get 
+PASS progress.dir: IDL set to object &quot;test-toString&quot; should not throw 
+PASS progress.dir: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS progress.dir: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS progress.dir: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS progress.dir: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS progress.dir: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS progress.dir: IDL set to &quot;ltr&quot; should not throw 
+PASS progress.dir: IDL set to &quot;ltr&quot; followed by getAttribute() 
+PASS progress.dir: IDL set to &quot;ltr&quot; followed by IDL get 
+PASS progress.dir: IDL set to &quot;xltr&quot; should not throw 
+PASS progress.dir: IDL set to &quot;xltr&quot; followed by getAttribute() 
+PASS progress.dir: IDL set to &quot;xltr&quot; followed by IDL get 
+PASS progress.dir: IDL set to &quot;ltr\0&quot; should not throw 
+PASS progress.dir: IDL set to &quot;ltr\0&quot; followed by getAttribute() 
+PASS progress.dir: IDL set to &quot;ltr\0&quot; followed by IDL get 
+PASS progress.dir: IDL set to &quot;tr&quot; should not throw 
+PASS progress.dir: IDL set to &quot;tr&quot; followed by getAttribute() 
+PASS progress.dir: IDL set to &quot;tr&quot; followed by IDL get 
+PASS progress.dir: IDL set to &quot;LTR&quot; should not throw 
+PASS progress.dir: IDL set to &quot;LTR&quot; followed by getAttribute() 
+PASS progress.dir: IDL set to &quot;LTR&quot; followed by IDL get 
+PASS progress.dir: IDL set to &quot;rtl&quot; should not throw 
+PASS progress.dir: IDL set to &quot;rtl&quot; followed by getAttribute() 
+PASS progress.dir: IDL set to &quot;rtl&quot; followed by IDL get 
+PASS progress.dir: IDL set to &quot;xrtl&quot; should not throw 
+PASS progress.dir: IDL set to &quot;xrtl&quot; followed by getAttribute() 
+PASS progress.dir: IDL set to &quot;xrtl&quot; followed by IDL get 
+PASS progress.dir: IDL set to &quot;rtl\0&quot; should not throw 
+PASS progress.dir: IDL set to &quot;rtl\0&quot; followed by getAttribute() 
+PASS progress.dir: IDL set to &quot;rtl\0&quot; followed by IDL get 
+PASS progress.dir: IDL set to &quot;tl&quot; should not throw 
+PASS progress.dir: IDL set to &quot;tl&quot; followed by getAttribute() 
+PASS progress.dir: IDL set to &quot;tl&quot; followed by IDL get 
+PASS progress.dir: IDL set to &quot;RTL&quot; should not throw 
+PASS progress.dir: IDL set to &quot;RTL&quot; followed by getAttribute() 
+PASS progress.dir: IDL set to &quot;RTL&quot; followed by IDL get 
+PASS progress.dir: IDL set to &quot;auto&quot; should not throw 
+PASS progress.dir: IDL set to &quot;auto&quot; followed by getAttribute() 
+PASS progress.dir: IDL set to &quot;auto&quot; followed by IDL get 
+PASS progress.dir: IDL set to &quot;xauto&quot; should not throw 
+PASS progress.dir: IDL set to &quot;xauto&quot; followed by getAttribute() 
+PASS progress.dir: IDL set to &quot;xauto&quot; followed by IDL get 
+PASS progress.dir: IDL set to &quot;auto\0&quot; should not throw 
+PASS progress.dir: IDL set to &quot;auto\0&quot; followed by getAttribute() 
+PASS progress.dir: IDL set to &quot;auto\0&quot; followed by IDL get 
+PASS progress.dir: IDL set to &quot;uto&quot; should not throw 
+PASS progress.dir: IDL set to &quot;uto&quot; followed by getAttribute() 
+PASS progress.dir: IDL set to &quot;uto&quot; followed by IDL get 
+PASS progress.dir: IDL set to &quot;AUTO&quot; should not throw 
+PASS progress.dir: IDL set to &quot;AUTO&quot; followed by getAttribute() 
+PASS progress.dir: IDL set to &quot;AUTO&quot; followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): typeof IDL attribute 
+PASS progress.className (&lt;progress class&gt;): IDL get with DOM attribute unset 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to &quot;&quot; followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to undefined followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to undefined followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to 7 followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to 7 followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to 1.5 followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to 1.5 followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to true followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to true followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to false followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to false followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to NaN followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to NaN followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to Infinity followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to Infinity followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to -Infinity followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to -Infinity followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to null followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to null followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): IDL set to &quot;&quot; should not throw 
+PASS progress.className (&lt;progress class&gt;): IDL set to &quot;&quot; followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): IDL set to &quot;&quot; followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS progress.className (&lt;progress class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): IDL set to undefined should not throw 
+PASS progress.className (&lt;progress class&gt;): IDL set to undefined followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): IDL set to undefined followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): IDL set to 7 should not throw 
+PASS progress.className (&lt;progress class&gt;): IDL set to 7 followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): IDL set to 7 followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): IDL set to 1.5 should not throw 
+PASS progress.className (&lt;progress class&gt;): IDL set to 1.5 followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): IDL set to 1.5 followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): IDL set to true should not throw 
+PASS progress.className (&lt;progress class&gt;): IDL set to true followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): IDL set to true followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): IDL set to false should not throw 
+PASS progress.className (&lt;progress class&gt;): IDL set to false followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): IDL set to false followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): IDL set to object &quot;[object Object]&quot; should not throw 
+PASS progress.className (&lt;progress class&gt;): IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): IDL set to NaN should not throw 
+PASS progress.className (&lt;progress class&gt;): IDL set to NaN followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): IDL set to NaN followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): IDL set to Infinity should not throw 
+PASS progress.className (&lt;progress class&gt;): IDL set to Infinity followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): IDL set to Infinity followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): IDL set to -Infinity should not throw 
+PASS progress.className (&lt;progress class&gt;): IDL set to -Infinity followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): IDL set to -Infinity followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): IDL set to &quot;\0&quot; should not throw 
+PASS progress.className (&lt;progress class&gt;): IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): IDL set to &quot;\0&quot; followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): IDL set to null should not throw 
+PASS progress.className (&lt;progress class&gt;): IDL set to null followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): IDL set to null followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): IDL set to object &quot;test-toString&quot; should not throw 
+PASS progress.className (&lt;progress class&gt;): IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS progress.className (&lt;progress class&gt;): IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS progress.className (&lt;progress class&gt;): IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS progress.className (&lt;progress class&gt;): IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS progress.hidden: typeof IDL attribute 
+PASS progress.hidden: IDL get with DOM attribute unset 
+PASS progress.hidden: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS progress.hidden: setAttribute() to &quot;&quot; followed by IDL get 
+PASS progress.hidden: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS progress.hidden: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS progress.hidden: setAttribute() to undefined followed by getAttribute() 
+PASS progress.hidden: setAttribute() to undefined followed by IDL get 
+PASS progress.hidden: setAttribute() to null followed by getAttribute() 
+PASS progress.hidden: setAttribute() to null followed by IDL get 
+PASS progress.hidden: setAttribute() to 7 followed by getAttribute() 
+PASS progress.hidden: setAttribute() to 7 followed by IDL get 
+PASS progress.hidden: setAttribute() to 1.5 followed by getAttribute() 
+PASS progress.hidden: setAttribute() to 1.5 followed by IDL get 
+PASS progress.hidden: setAttribute() to true followed by getAttribute() 
+PASS progress.hidden: setAttribute() to true followed by IDL get 
+PASS progress.hidden: setAttribute() to false followed by getAttribute() 
+PASS progress.hidden: setAttribute() to false followed by IDL get 
+PASS progress.hidden: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS progress.hidden: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS progress.hidden: setAttribute() to NaN followed by getAttribute() 
+PASS progress.hidden: setAttribute() to NaN followed by IDL get 
+PASS progress.hidden: setAttribute() to Infinity followed by getAttribute() 
+PASS progress.hidden: setAttribute() to Infinity followed by IDL get 
+PASS progress.hidden: setAttribute() to -Infinity followed by getAttribute() 
+PASS progress.hidden: setAttribute() to -Infinity followed by IDL get 
+PASS progress.hidden: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS progress.hidden: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS progress.hidden: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS progress.hidden: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS progress.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS progress.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS progress.hidden: setAttribute() to &quot;hidden&quot; followed by getAttribute() 
+PASS progress.hidden: setAttribute() to &quot;hidden&quot; followed by IDL get 
+PASS progress.hidden: IDL set to &quot;&quot; should not throw 
+PASS progress.hidden: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS progress.hidden: IDL set to &quot;&quot; followed by IDL get 
+PASS progress.hidden: IDL set to &quot; foo &quot; should not throw 
+PASS progress.hidden: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS progress.hidden: IDL set to &quot; foo &quot; followed by IDL get 
+PASS progress.hidden: IDL set to undefined should not throw 
+PASS progress.hidden: IDL set to undefined followed by hasAttribute() 
+PASS progress.hidden: IDL set to undefined followed by IDL get 
+PASS progress.hidden: IDL set to null should not throw 
+PASS progress.hidden: IDL set to null followed by hasAttribute() 
+PASS progress.hidden: IDL set to null followed by IDL get 
+PASS progress.hidden: IDL set to 7 should not throw 
+PASS progress.hidden: IDL set to 7 followed by hasAttribute() 
+PASS progress.hidden: IDL set to 7 followed by IDL get 
+PASS progress.hidden: IDL set to 1.5 should not throw 
+PASS progress.hidden: IDL set to 1.5 followed by hasAttribute() 
+PASS progress.hidden: IDL set to 1.5 followed by IDL get 
+PASS progress.hidden: IDL set to true should not throw 
+PASS progress.hidden: IDL set to true followed by hasAttribute() 
+PASS progress.hidden: IDL set to true followed by IDL get 
+PASS progress.hidden: IDL set to false should not throw 
+PASS progress.hidden: IDL set to false followed by hasAttribute() 
+PASS progress.hidden: IDL set to false followed by IDL get 
+PASS progress.hidden: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS progress.hidden: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS progress.hidden: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS progress.hidden: IDL set to NaN should not throw 
+PASS progress.hidden: IDL set to NaN followed by hasAttribute() 
+PASS progress.hidden: IDL set to NaN followed by IDL get 
+PASS progress.hidden: IDL set to Infinity should not throw 
+PASS progress.hidden: IDL set to Infinity followed by hasAttribute() 
+PASS progress.hidden: IDL set to Infinity followed by IDL get 
+PASS progress.hidden: IDL set to -Infinity should not throw 
+PASS progress.hidden: IDL set to -Infinity followed by hasAttribute() 
+PASS progress.hidden: IDL set to -Infinity followed by IDL get 
+PASS progress.hidden: IDL set to &quot;\0&quot; should not throw 
+PASS progress.hidden: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS progress.hidden: IDL set to &quot;\0&quot; followed by IDL get 
+PASS progress.hidden: IDL set to object &quot;test-toString&quot; should not throw 
+PASS progress.hidden: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS progress.hidden: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS progress.hidden: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS progress.hidden: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS progress.hidden: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS progress.accessKey: typeof IDL attribute 
+PASS progress.accessKey: IDL get with DOM attribute unset 
+PASS progress.accessKey: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS progress.accessKey: setAttribute() to &quot;&quot; followed by IDL get 
+PASS progress.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS progress.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS progress.accessKey: setAttribute() to undefined followed by getAttribute() 
+PASS progress.accessKey: setAttribute() to undefined followed by IDL get 
+PASS progress.accessKey: setAttribute() to 7 followed by getAttribute() 
+PASS progress.accessKey: setAttribute() to 7 followed by IDL get 
+PASS progress.accessKey: setAttribute() to 1.5 followed by getAttribute() 
+PASS progress.accessKey: setAttribute() to 1.5 followed by IDL get 
+PASS progress.accessKey: setAttribute() to true followed by getAttribute() 
+PASS progress.accessKey: setAttribute() to true followed by IDL get 
+PASS progress.accessKey: setAttribute() to false followed by getAttribute() 
+PASS progress.accessKey: setAttribute() to false followed by IDL get 
+PASS progress.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS progress.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS progress.accessKey: setAttribute() to NaN followed by getAttribute() 
+PASS progress.accessKey: setAttribute() to NaN followed by IDL get 
+PASS progress.accessKey: setAttribute() to Infinity followed by getAttribute() 
+PASS progress.accessKey: setAttribute() to Infinity followed by IDL get 
+PASS progress.accessKey: setAttribute() to -Infinity followed by getAttribute() 
+PASS progress.accessKey: setAttribute() to -Infinity followed by IDL get 
+PASS progress.accessKey: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS progress.accessKey: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS progress.accessKey: setAttribute() to null followed by getAttribute() 
+PASS progress.accessKey: setAttribute() to null followed by IDL get 
+PASS progress.accessKey: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS progress.accessKey: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS progress.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS progress.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS progress.accessKey: IDL set to &quot;&quot; should not throw 
+PASS progress.accessKey: IDL set to &quot;&quot; followed by getAttribute() 
+PASS progress.accessKey: IDL set to &quot;&quot; followed by IDL get 
+PASS progress.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS progress.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS progress.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS progress.accessKey: IDL set to undefined should not throw 
+PASS progress.accessKey: IDL set to undefined followed by getAttribute() 
+PASS progress.accessKey: IDL set to undefined followed by IDL get 
+PASS progress.accessKey: IDL set to 7 should not throw 
+PASS progress.accessKey: IDL set to 7 followed by getAttribute() 
+PASS progress.accessKey: IDL set to 7 followed by IDL get 
+PASS progress.accessKey: IDL set to 1.5 should not throw 
+PASS progress.accessKey: IDL set to 1.5 followed by getAttribute() 
+PASS progress.accessKey: IDL set to 1.5 followed by IDL get 
+PASS progress.accessKey: IDL set to true should not throw 
+PASS progress.accessKey: IDL set to true followed by getAttribute() 
+PASS progress.accessKey: IDL set to true followed by IDL get 
+PASS progress.accessKey: IDL set to false should not throw 
+PASS progress.accessKey: IDL set to false followed by getAttribute() 
+PASS progress.accessKey: IDL set to false followed by IDL get 
+PASS progress.accessKey: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS progress.accessKey: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS progress.accessKey: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS progress.accessKey: IDL set to NaN should not throw 
+PASS progress.accessKey: IDL set to NaN followed by getAttribute() 
+PASS progress.accessKey: IDL set to NaN followed by IDL get 
+PASS progress.accessKey: IDL set to Infinity should not throw 
+PASS progress.accessKey: IDL set to Infinity followed by getAttribute() 
+PASS progress.accessKey: IDL set to Infinity followed by IDL get 
+PASS progress.accessKey: IDL set to -Infinity should not throw 
+PASS progress.accessKey: IDL set to -Infinity followed by getAttribute() 
+PASS progress.accessKey: IDL set to -Infinity followed by IDL get 
+PASS progress.accessKey: IDL set to &quot;\0&quot; should not throw 
+PASS progress.accessKey: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS progress.accessKey: IDL set to &quot;\0&quot; followed by IDL get 
+PASS progress.accessKey: IDL set to null should not throw 
+PASS progress.accessKey: IDL set to null followed by getAttribute() 
+PASS progress.accessKey: IDL set to null followed by IDL get 
+PASS progress.accessKey: IDL set to object &quot;test-toString&quot; should not throw 
+PASS progress.accessKey: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS progress.accessKey: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS progress.accessKey: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS progress.accessKey: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS progress.accessKey: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS progress.tabIndex: typeof IDL attribute 
+PASS progress.tabIndex: setAttribute() to -36 followed by getAttribute() 
+PASS progress.tabIndex: setAttribute() to -36 followed by IDL get 
+PASS progress.tabIndex: setAttribute() to -1 followed by getAttribute() 
+PASS progress.tabIndex: setAttribute() to -1 followed by IDL get 
+PASS progress.tabIndex: setAttribute() to 0 followed by getAttribute() 
+PASS progress.tabIndex: setAttribute() to 0 followed by IDL get 
+PASS progress.tabIndex: setAttribute() to 1 followed by getAttribute() 
+PASS progress.tabIndex: setAttribute() to 1 followed by IDL get 
+PASS progress.tabIndex: setAttribute() to 2147483647 followed by getAttribute() 
+PASS progress.tabIndex: setAttribute() to 2147483647 followed by IDL get 
+PASS progress.tabIndex: setAttribute() to -2147483648 followed by getAttribute() 
+PASS progress.tabIndex: setAttribute() to -2147483648 followed by IDL get 
+PASS progress.tabIndex: setAttribute() to &quot;-1&quot; followed by getAttribute() 
+PASS progress.tabIndex: setAttribute() to &quot;-1&quot; followed by IDL get 
+PASS progress.tabIndex: setAttribute() to &quot;-0&quot; followed by getAttribute() 
+PASS progress.tabIndex: setAttribute() to &quot;-0&quot; followed by IDL get 
+PASS progress.tabIndex: setAttribute() to &quot;0&quot; followed by getAttribute() 
+PASS progress.tabIndex: setAttribute() to &quot;0&quot; followed by IDL get 
+PASS progress.tabIndex: setAttribute() to &quot;1&quot; followed by getAttribute() 
+PASS progress.tabIndex: setAttribute() to &quot;1&quot; followed by IDL get 
+PASS progress.tabIndex: setAttribute() to &quot;\t7&quot; followed by getAttribute() 
+PASS progress.tabIndex: setAttribute() to &quot;\t7&quot; followed by IDL get 
+PASS progress.tabIndex: setAttribute() to &quot;\f7&quot; followed by getAttribute() 
+PASS progress.tabIndex: setAttribute() to &quot;\f7&quot; followed by IDL get 
+PASS progress.tabIndex: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS progress.tabIndex: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS progress.tabIndex: setAttribute() to &quot;\n7&quot; followed by getAttribute() 
+PASS progress.tabIndex: setAttribute() to &quot;\n7&quot; followed by IDL get 
+PASS progress.tabIndex: setAttribute() to &quot;\r7&quot; followed by getAttribute() 
+PASS progress.tabIndex: setAttribute() to &quot;\r7&quot; followed by IDL get 
+PASS progress.tabIndex: setAttribute() to 1.5 followed by getAttribute() 
+PASS progress.tabIndex: setAttribute() to 1.5 followed by IDL get 
+PASS progress.tabIndex: setAttribute() to object &quot;2&quot; followed by getAttribute() 
+PASS progress.tabIndex: setAttribute() to object &quot;2&quot; followed by IDL get 
+PASS progress.tabIndex: IDL set to -36 should not throw 
+PASS progress.tabIndex: IDL set to -36 followed by getAttribute() 
+PASS progress.tabIndex: IDL set to -36 followed by IDL get 
+PASS progress.tabIndex: IDL set to -1 should not throw 
+PASS progress.tabIndex: IDL set to -1 followed by getAttribute() 
+PASS progress.tabIndex: IDL set to -1 followed by IDL get 
+PASS progress.tabIndex: IDL set to 0 should not throw 
+PASS progress.tabIndex: IDL set to 0 followed by getAttribute() 
+PASS progress.tabIndex: IDL set to 0 followed by IDL get 
+PASS progress.tabIndex: IDL set to 1 should not throw 
+PASS progress.tabIndex: IDL set to 1 followed by getAttribute() 
+PASS progress.tabIndex: IDL set to 1 followed by IDL get 
+PASS progress.tabIndex: IDL set to 2147483647 should not throw 
+PASS progress.tabIndex: IDL set to 2147483647 followed by getAttribute() 
+PASS progress.tabIndex: IDL set to 2147483647 followed by IDL get 
+PASS progress.tabIndex: IDL set to -2147483648 should not throw 
+PASS progress.tabIndex: IDL set to -2147483648 followed by getAttribute() 
+PASS progress.tabIndex: IDL set to -2147483648 followed by IDL get 
+PASS meter.title: typeof IDL attribute 
+PASS meter.title: IDL get with DOM attribute unset 
+PASS meter.title: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS meter.title: setAttribute() to &quot;&quot; followed by IDL get 
+PASS meter.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS meter.title: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS meter.title: setAttribute() to undefined followed by getAttribute() 
+PASS meter.title: setAttribute() to undefined followed by IDL get 
+PASS meter.title: setAttribute() to 7 followed by getAttribute() 
+PASS meter.title: setAttribute() to 7 followed by IDL get 
+PASS meter.title: setAttribute() to 1.5 followed by getAttribute() 
+PASS meter.title: setAttribute() to 1.5 followed by IDL get 
+PASS meter.title: setAttribute() to true followed by getAttribute() 
+PASS meter.title: setAttribute() to true followed by IDL get 
+PASS meter.title: setAttribute() to false followed by getAttribute() 
+PASS meter.title: setAttribute() to false followed by IDL get 
+PASS meter.title: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS meter.title: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS meter.title: setAttribute() to NaN followed by getAttribute() 
+PASS meter.title: setAttribute() to NaN followed by IDL get 
+PASS meter.title: setAttribute() to Infinity followed by getAttribute() 
+PASS meter.title: setAttribute() to Infinity followed by IDL get 
+PASS meter.title: setAttribute() to -Infinity followed by getAttribute() 
+PASS meter.title: setAttribute() to -Infinity followed by IDL get 
+PASS meter.title: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS meter.title: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS meter.title: setAttribute() to null followed by getAttribute() 
+PASS meter.title: setAttribute() to null followed by IDL get 
+PASS meter.title: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS meter.title: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS meter.title: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS meter.title: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS meter.title: IDL set to &quot;&quot; should not throw 
+PASS meter.title: IDL set to &quot;&quot; followed by getAttribute() 
+PASS meter.title: IDL set to &quot;&quot; followed by IDL get 
+PASS meter.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS meter.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS meter.title: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS meter.title: IDL set to undefined should not throw 
+PASS meter.title: IDL set to undefined followed by getAttribute() 
+PASS meter.title: IDL set to undefined followed by IDL get 
+PASS meter.title: IDL set to 7 should not throw 
+PASS meter.title: IDL set to 7 followed by getAttribute() 
+PASS meter.title: IDL set to 7 followed by IDL get 
+PASS meter.title: IDL set to 1.5 should not throw 
+PASS meter.title: IDL set to 1.5 followed by getAttribute() 
+PASS meter.title: IDL set to 1.5 followed by IDL get 
+PASS meter.title: IDL set to true should not throw 
+PASS meter.title: IDL set to true followed by getAttribute() 
+PASS meter.title: IDL set to true followed by IDL get 
+PASS meter.title: IDL set to false should not throw 
+PASS meter.title: IDL set to false followed by getAttribute() 
+PASS meter.title: IDL set to false followed by IDL get 
+PASS meter.title: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS meter.title: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS meter.title: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS meter.title: IDL set to NaN should not throw 
+PASS meter.title: IDL set to NaN followed by getAttribute() 
+PASS meter.title: IDL set to NaN followed by IDL get 
+PASS meter.title: IDL set to Infinity should not throw 
+PASS meter.title: IDL set to Infinity followed by getAttribute() 
+PASS meter.title: IDL set to Infinity followed by IDL get 
+PASS meter.title: IDL set to -Infinity should not throw 
+PASS meter.title: IDL set to -Infinity followed by getAttribute() 
+PASS meter.title: IDL set to -Infinity followed by IDL get 
+PASS meter.title: IDL set to &quot;\0&quot; should not throw 
+PASS meter.title: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS meter.title: IDL set to &quot;\0&quot; followed by IDL get 
+PASS meter.title: IDL set to null should not throw 
+PASS meter.title: IDL set to null followed by getAttribute() 
+PASS meter.title: IDL set to null followed by IDL get 
+PASS meter.title: IDL set to object &quot;test-toString&quot; should not throw 
+PASS meter.title: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS meter.title: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS meter.title: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS meter.title: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS meter.title: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS meter.lang: typeof IDL attribute 
+PASS meter.lang: IDL get with DOM attribute unset 
+PASS meter.lang: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS meter.lang: setAttribute() to &quot;&quot; followed by IDL get 
+PASS meter.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS meter.lang: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS meter.lang: setAttribute() to undefined followed by getAttribute() 
+PASS meter.lang: setAttribute() to undefined followed by IDL get 
+PASS meter.lang: setAttribute() to 7 followed by getAttribute() 
+PASS meter.lang: setAttribute() to 7 followed by IDL get 
+PASS meter.lang: setAttribute() to 1.5 followed by getAttribute() 
+PASS meter.lang: setAttribute() to 1.5 followed by IDL get 
+PASS meter.lang: setAttribute() to true followed by getAttribute() 
+PASS meter.lang: setAttribute() to true followed by IDL get 
+PASS meter.lang: setAttribute() to false followed by getAttribute() 
+PASS meter.lang: setAttribute() to false followed by IDL get 
+PASS meter.lang: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS meter.lang: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS meter.lang: setAttribute() to NaN followed by getAttribute() 
+PASS meter.lang: setAttribute() to NaN followed by IDL get 
+PASS meter.lang: setAttribute() to Infinity followed by getAttribute() 
+PASS meter.lang: setAttribute() to Infinity followed by IDL get 
+PASS meter.lang: setAttribute() to -Infinity followed by getAttribute() 
+PASS meter.lang: setAttribute() to -Infinity followed by IDL get 
+PASS meter.lang: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS meter.lang: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS meter.lang: setAttribute() to null followed by getAttribute() 
+PASS meter.lang: setAttribute() to null followed by IDL get 
+PASS meter.lang: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS meter.lang: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS meter.lang: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS meter.lang: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS meter.lang: IDL set to &quot;&quot; should not throw 
+PASS meter.lang: IDL set to &quot;&quot; followed by getAttribute() 
+PASS meter.lang: IDL set to &quot;&quot; followed by IDL get 
+PASS meter.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS meter.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS meter.lang: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS meter.lang: IDL set to undefined should not throw 
+PASS meter.lang: IDL set to undefined followed by getAttribute() 
+PASS meter.lang: IDL set to undefined followed by IDL get 
+PASS meter.lang: IDL set to 7 should not throw 
+PASS meter.lang: IDL set to 7 followed by getAttribute() 
+PASS meter.lang: IDL set to 7 followed by IDL get 
+PASS meter.lang: IDL set to 1.5 should not throw 
+PASS meter.lang: IDL set to 1.5 followed by getAttribute() 
+PASS meter.lang: IDL set to 1.5 followed by IDL get 
+PASS meter.lang: IDL set to true should not throw 
+PASS meter.lang: IDL set to true followed by getAttribute() 
+PASS meter.lang: IDL set to true followed by IDL get 
+PASS meter.lang: IDL set to false should not throw 
+PASS meter.lang: IDL set to false followed by getAttribute() 
+PASS meter.lang: IDL set to false followed by IDL get 
+PASS meter.lang: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS meter.lang: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS meter.lang: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS meter.lang: IDL set to NaN should not throw 
+PASS meter.lang: IDL set to NaN followed by getAttribute() 
+PASS meter.lang: IDL set to NaN followed by IDL get 
+PASS meter.lang: IDL set to Infinity should not throw 
+PASS meter.lang: IDL set to Infinity followed by getAttribute() 
+PASS meter.lang: IDL set to Infinity followed by IDL get 
+PASS meter.lang: IDL set to -Infinity should not throw 
+PASS meter.lang: IDL set to -Infinity followed by getAttribute() 
+PASS meter.lang: IDL set to -Infinity followed by IDL get 
+PASS meter.lang: IDL set to &quot;\0&quot; should not throw 
+PASS meter.lang: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS meter.lang: IDL set to &quot;\0&quot; followed by IDL get 
+PASS meter.lang: IDL set to null should not throw 
+PASS meter.lang: IDL set to null followed by getAttribute() 
+PASS meter.lang: IDL set to null followed by IDL get 
+PASS meter.lang: IDL set to object &quot;test-toString&quot; should not throw 
+PASS meter.lang: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS meter.lang: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS meter.lang: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS meter.lang: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS meter.lang: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS meter.dir: typeof IDL attribute 
+PASS meter.dir: IDL get with DOM attribute unset 
+PASS meter.dir: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS meter.dir: setAttribute() to &quot;&quot; followed by IDL get 
+PASS meter.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS meter.dir: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS meter.dir: setAttribute() to undefined followed by getAttribute() 
+PASS meter.dir: setAttribute() to undefined followed by IDL get 
+PASS meter.dir: setAttribute() to 7 followed by getAttribute() 
+PASS meter.dir: setAttribute() to 7 followed by IDL get 
+PASS meter.dir: setAttribute() to 1.5 followed by getAttribute() 
+PASS meter.dir: setAttribute() to 1.5 followed by IDL get 
+PASS meter.dir: setAttribute() to true followed by getAttribute() 
+PASS meter.dir: setAttribute() to true followed by IDL get 
+PASS meter.dir: setAttribute() to false followed by getAttribute() 
+PASS meter.dir: setAttribute() to false followed by IDL get 
+PASS meter.dir: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS meter.dir: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS meter.dir: setAttribute() to NaN followed by getAttribute() 
+PASS meter.dir: setAttribute() to NaN followed by IDL get 
+PASS meter.dir: setAttribute() to Infinity followed by getAttribute() 
+PASS meter.dir: setAttribute() to Infinity followed by IDL get 
+PASS meter.dir: setAttribute() to -Infinity followed by getAttribute() 
+PASS meter.dir: setAttribute() to -Infinity followed by IDL get 
+PASS meter.dir: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS meter.dir: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS meter.dir: setAttribute() to null followed by getAttribute() 
+PASS meter.dir: setAttribute() to null followed by IDL get 
+PASS meter.dir: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS meter.dir: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS meter.dir: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS meter.dir: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS meter.dir: setAttribute() to &quot;ltr&quot; followed by getAttribute() 
+PASS meter.dir: setAttribute() to &quot;ltr&quot; followed by IDL get 
+PASS meter.dir: setAttribute() to &quot;xltr&quot; followed by getAttribute() 
+PASS meter.dir: setAttribute() to &quot;xltr&quot; followed by IDL get 
+PASS meter.dir: setAttribute() to &quot;ltr\0&quot; followed by getAttribute() 
+PASS meter.dir: setAttribute() to &quot;ltr\0&quot; followed by IDL get 
+PASS meter.dir: setAttribute() to &quot;tr&quot; followed by getAttribute() 
+PASS meter.dir: setAttribute() to &quot;tr&quot; followed by IDL get 
+PASS meter.dir: setAttribute() to &quot;LTR&quot; followed by getAttribute() 
+PASS meter.dir: setAttribute() to &quot;LTR&quot; followed by IDL get 
+PASS meter.dir: setAttribute() to &quot;rtl&quot; followed by getAttribute() 
+PASS meter.dir: setAttribute() to &quot;rtl&quot; followed by IDL get 
+PASS meter.dir: setAttribute() to &quot;xrtl&quot; followed by getAttribute() 
+PASS meter.dir: setAttribute() to &quot;xrtl&quot; followed by IDL get 
+PASS meter.dir: setAttribute() to &quot;rtl\0&quot; followed by getAttribute() 
+PASS meter.dir: setAttribute() to &quot;rtl\0&quot; followed by IDL get 
+PASS meter.dir: setAttribute() to &quot;tl&quot; followed by getAttribute() 
+PASS meter.dir: setAttribute() to &quot;tl&quot; followed by IDL get 
+PASS meter.dir: setAttribute() to &quot;RTL&quot; followed by getAttribute() 
+PASS meter.dir: setAttribute() to &quot;RTL&quot; followed by IDL get 
+PASS meter.dir: setAttribute() to &quot;auto&quot; followed by getAttribute() 
+PASS meter.dir: setAttribute() to &quot;auto&quot; followed by IDL get 
+PASS meter.dir: setAttribute() to &quot;xauto&quot; followed by getAttribute() 
+PASS meter.dir: setAttribute() to &quot;xauto&quot; followed by IDL get 
+PASS meter.dir: setAttribute() to &quot;auto\0&quot; followed by getAttribute() 
+PASS meter.dir: setAttribute() to &quot;auto\0&quot; followed by IDL get 
+PASS meter.dir: setAttribute() to &quot;uto&quot; followed by getAttribute() 
+PASS meter.dir: setAttribute() to &quot;uto&quot; followed by IDL get 
+PASS meter.dir: setAttribute() to &quot;AUTO&quot; followed by getAttribute() 
+PASS meter.dir: setAttribute() to &quot;AUTO&quot; followed by IDL get 
+PASS meter.dir: IDL set to &quot;&quot; should not throw 
+PASS meter.dir: IDL set to &quot;&quot; followed by getAttribute() 
+PASS meter.dir: IDL set to &quot;&quot; followed by IDL get 
+PASS meter.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS meter.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS meter.dir: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS meter.dir: IDL set to undefined should not throw 
+PASS meter.dir: IDL set to undefined followed by getAttribute() 
+PASS meter.dir: IDL set to undefined followed by IDL get 
+PASS meter.dir: IDL set to 7 should not throw 
+PASS meter.dir: IDL set to 7 followed by getAttribute() 
+PASS meter.dir: IDL set to 7 followed by IDL get 
+PASS meter.dir: IDL set to 1.5 should not throw 
+PASS meter.dir: IDL set to 1.5 followed by getAttribute() 
+PASS meter.dir: IDL set to 1.5 followed by IDL get 
+PASS meter.dir: IDL set to true should not throw 
+PASS meter.dir: IDL set to true followed by getAttribute() 
+PASS meter.dir: IDL set to true followed by IDL get 
+PASS meter.dir: IDL set to false should not throw 
+PASS meter.dir: IDL set to false followed by getAttribute() 
+PASS meter.dir: IDL set to false followed by IDL get 
+PASS meter.dir: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS meter.dir: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS meter.dir: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS meter.dir: IDL set to NaN should not throw 
+PASS meter.dir: IDL set to NaN followed by getAttribute() 
+PASS meter.dir: IDL set to NaN followed by IDL get 
+PASS meter.dir: IDL set to Infinity should not throw 
+PASS meter.dir: IDL set to Infinity followed by getAttribute() 
+PASS meter.dir: IDL set to Infinity followed by IDL get 
+PASS meter.dir: IDL set to -Infinity should not throw 
+PASS meter.dir: IDL set to -Infinity followed by getAttribute() 
+PASS meter.dir: IDL set to -Infinity followed by IDL get 
+PASS meter.dir: IDL set to &quot;\0&quot; should not throw 
+PASS meter.dir: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS meter.dir: IDL set to &quot;\0&quot; followed by IDL get 
+PASS meter.dir: IDL set to null should not throw 
+PASS meter.dir: IDL set to null followed by IDL get 
+PASS meter.dir: IDL set to object &quot;test-toString&quot; should not throw 
+PASS meter.dir: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS meter.dir: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS meter.dir: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS meter.dir: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS meter.dir: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS meter.dir: IDL set to &quot;ltr&quot; should not throw 
+PASS meter.dir: IDL set to &quot;ltr&quot; followed by getAttribute() 
+PASS meter.dir: IDL set to &quot;ltr&quot; followed by IDL get 
+PASS meter.dir: IDL set to &quot;xltr&quot; should not throw 
+PASS meter.dir: IDL set to &quot;xltr&quot; followed by getAttribute() 
+PASS meter.dir: IDL set to &quot;xltr&quot; followed by IDL get 
+PASS meter.dir: IDL set to &quot;ltr\0&quot; should not throw 
+PASS meter.dir: IDL set to &quot;ltr\0&quot; followed by getAttribute() 
+PASS meter.dir: IDL set to &quot;ltr\0&quot; followed by IDL get 
+PASS meter.dir: IDL set to &quot;tr&quot; should not throw 
+PASS meter.dir: IDL set to &quot;tr&quot; followed by getAttribute() 
+PASS meter.dir: IDL set to &quot;tr&quot; followed by IDL get 
+PASS meter.dir: IDL set to &quot;LTR&quot; should not throw 
+PASS meter.dir: IDL set to &quot;LTR&quot; followed by getAttribute() 
+PASS meter.dir: IDL set to &quot;LTR&quot; followed by IDL get 
+PASS meter.dir: IDL set to &quot;rtl&quot; should not throw 
+PASS meter.dir: IDL set to &quot;rtl&quot; followed by getAttribute() 
+PASS meter.dir: IDL set to &quot;rtl&quot; followed by IDL get 
+PASS meter.dir: IDL set to &quot;xrtl&quot; should not throw 
+PASS meter.dir: IDL set to &quot;xrtl&quot; followed by getAttribute() 
+PASS meter.dir: IDL set to &quot;xrtl&quot; followed by IDL get 
+PASS meter.dir: IDL set to &quot;rtl\0&quot; should not throw 
+PASS meter.dir: IDL set to &quot;rtl\0&quot; followed by getAttribute() 
+PASS meter.dir: IDL set to &quot;rtl\0&quot; followed by IDL get 
+PASS meter.dir: IDL set to &quot;tl&quot; should not throw 
+PASS meter.dir: IDL set to &quot;tl&quot; followed by getAttribute() 
+PASS meter.dir: IDL set to &quot;tl&quot; followed by IDL get 
+PASS meter.dir: IDL set to &quot;RTL&quot; should not throw 
+PASS meter.dir: IDL set to &quot;RTL&quot; followed by getAttribute() 
+PASS meter.dir: IDL set to &quot;RTL&quot; followed by IDL get 
+PASS meter.dir: IDL set to &quot;auto&quot; should not throw 
+PASS meter.dir: IDL set to &quot;auto&quot; followed by getAttribute() 
+PASS meter.dir: IDL set to &quot;auto&quot; followed by IDL get 
+PASS meter.dir: IDL set to &quot;xauto&quot; should not throw 
+PASS meter.dir: IDL set to &quot;xauto&quot; followed by getAttribute() 
+PASS meter.dir: IDL set to &quot;xauto&quot; followed by IDL get 
+PASS meter.dir: IDL set to &quot;auto\0&quot; should not throw 
+PASS meter.dir: IDL set to &quot;auto\0&quot; followed by getAttribute() 
+PASS meter.dir: IDL set to &quot;auto\0&quot; followed by IDL get 
+PASS meter.dir: IDL set to &quot;uto&quot; should not throw 
+PASS meter.dir: IDL set to &quot;uto&quot; followed by getAttribute() 
+PASS meter.dir: IDL set to &quot;uto&quot; followed by IDL get 
+PASS meter.dir: IDL set to &quot;AUTO&quot; should not throw 
+PASS meter.dir: IDL set to &quot;AUTO&quot; followed by getAttribute() 
+PASS meter.dir: IDL set to &quot;AUTO&quot; followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): typeof IDL attribute 
+PASS meter.className (&lt;meter class&gt;): IDL get with DOM attribute unset 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to &quot;&quot; followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to undefined followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to undefined followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to 7 followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to 7 followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to 1.5 followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to 1.5 followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to true followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to true followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to false followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to false followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to NaN followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to NaN followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to Infinity followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to Infinity followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to -Infinity followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to -Infinity followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to null followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to null followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): IDL set to &quot;&quot; should not throw 
+PASS meter.className (&lt;meter class&gt;): IDL set to &quot;&quot; followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): IDL set to &quot;&quot; followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS meter.className (&lt;meter class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): IDL set to undefined should not throw 
+PASS meter.className (&lt;meter class&gt;): IDL set to undefined followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): IDL set to undefined followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): IDL set to 7 should not throw 
+PASS meter.className (&lt;meter class&gt;): IDL set to 7 followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): IDL set to 7 followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): IDL set to 1.5 should not throw 
+PASS meter.className (&lt;meter class&gt;): IDL set to 1.5 followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): IDL set to 1.5 followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): IDL set to true should not throw 
+PASS meter.className (&lt;meter class&gt;): IDL set to true followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): IDL set to true followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): IDL set to false should not throw 
+PASS meter.className (&lt;meter class&gt;): IDL set to false followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): IDL set to false followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): IDL set to object &quot;[object Object]&quot; should not throw 
+PASS meter.className (&lt;meter class&gt;): IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): IDL set to NaN should not throw 
+PASS meter.className (&lt;meter class&gt;): IDL set to NaN followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): IDL set to NaN followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): IDL set to Infinity should not throw 
+PASS meter.className (&lt;meter class&gt;): IDL set to Infinity followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): IDL set to Infinity followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): IDL set to -Infinity should not throw 
+PASS meter.className (&lt;meter class&gt;): IDL set to -Infinity followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): IDL set to -Infinity followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): IDL set to &quot;\0&quot; should not throw 
+PASS meter.className (&lt;meter class&gt;): IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): IDL set to &quot;\0&quot; followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): IDL set to null should not throw 
+PASS meter.className (&lt;meter class&gt;): IDL set to null followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): IDL set to null followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): IDL set to object &quot;test-toString&quot; should not throw 
+PASS meter.className (&lt;meter class&gt;): IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS meter.className (&lt;meter class&gt;): IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS meter.className (&lt;meter class&gt;): IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS meter.className (&lt;meter class&gt;): IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS meter.hidden: typeof IDL attribute 
+PASS meter.hidden: IDL get with DOM attribute unset 
+PASS meter.hidden: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS meter.hidden: setAttribute() to &quot;&quot; followed by IDL get 
+PASS meter.hidden: setAttribute() to &quot; foo &quot; followed by getAttribute() 
+PASS meter.hidden: setAttribute() to &quot; foo &quot; followed by IDL get 
+PASS meter.hidden: setAttribute() to undefined followed by getAttribute() 
+PASS meter.hidden: setAttribute() to undefined followed by IDL get 
+PASS meter.hidden: setAttribute() to null followed by getAttribute() 
+PASS meter.hidden: setAttribute() to null followed by IDL get 
+PASS meter.hidden: setAttribute() to 7 followed by getAttribute() 
+PASS meter.hidden: setAttribute() to 7 followed by IDL get 
+PASS meter.hidden: setAttribute() to 1.5 followed by getAttribute() 
+PASS meter.hidden: setAttribute() to 1.5 followed by IDL get 
+PASS meter.hidden: setAttribute() to true followed by getAttribute() 
+PASS meter.hidden: setAttribute() to true followed by IDL get 
+PASS meter.hidden: setAttribute() to false followed by getAttribute() 
+PASS meter.hidden: setAttribute() to false followed by IDL get 
+PASS meter.hidden: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS meter.hidden: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS meter.hidden: setAttribute() to NaN followed by getAttribute() 
+PASS meter.hidden: setAttribute() to NaN followed by IDL get 
+PASS meter.hidden: setAttribute() to Infinity followed by getAttribute() 
+PASS meter.hidden: setAttribute() to Infinity followed by IDL get 
+PASS meter.hidden: setAttribute() to -Infinity followed by getAttribute() 
+PASS meter.hidden: setAttribute() to -Infinity followed by IDL get 
+PASS meter.hidden: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS meter.hidden: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS meter.hidden: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS meter.hidden: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS meter.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS meter.hidden: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS meter.hidden: setAttribute() to &quot;hidden&quot; followed by getAttribute() 
+PASS meter.hidden: setAttribute() to &quot;hidden&quot; followed by IDL get 
+PASS meter.hidden: IDL set to &quot;&quot; should not throw 
+PASS meter.hidden: IDL set to &quot;&quot; followed by hasAttribute() 
+PASS meter.hidden: IDL set to &quot;&quot; followed by IDL get 
+PASS meter.hidden: IDL set to &quot; foo &quot; should not throw 
+PASS meter.hidden: IDL set to &quot; foo &quot; followed by hasAttribute() 
+PASS meter.hidden: IDL set to &quot; foo &quot; followed by IDL get 
+PASS meter.hidden: IDL set to undefined should not throw 
+PASS meter.hidden: IDL set to undefined followed by hasAttribute() 
+PASS meter.hidden: IDL set to undefined followed by IDL get 
+PASS meter.hidden: IDL set to null should not throw 
+PASS meter.hidden: IDL set to null followed by hasAttribute() 
+PASS meter.hidden: IDL set to null followed by IDL get 
+PASS meter.hidden: IDL set to 7 should not throw 
+PASS meter.hidden: IDL set to 7 followed by hasAttribute() 
+PASS meter.hidden: IDL set to 7 followed by IDL get 
+PASS meter.hidden: IDL set to 1.5 should not throw 
+PASS meter.hidden: IDL set to 1.5 followed by hasAttribute() 
+PASS meter.hidden: IDL set to 1.5 followed by IDL get 
+PASS meter.hidden: IDL set to true should not throw 
+PASS meter.hidden: IDL set to true followed by hasAttribute() 
+PASS meter.hidden: IDL set to true followed by IDL get 
+PASS meter.hidden: IDL set to false should not throw 
+PASS meter.hidden: IDL set to false followed by hasAttribute() 
+PASS meter.hidden: IDL set to false followed by IDL get 
+PASS meter.hidden: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS meter.hidden: IDL set to object &quot;[object Object]&quot; followed by hasAttribute() 
+PASS meter.hidden: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS meter.hidden: IDL set to NaN should not throw 
+PASS meter.hidden: IDL set to NaN followed by hasAttribute() 
+PASS meter.hidden: IDL set to NaN followed by IDL get 
+PASS meter.hidden: IDL set to Infinity should not throw 
+PASS meter.hidden: IDL set to Infinity followed by hasAttribute() 
+PASS meter.hidden: IDL set to Infinity followed by IDL get 
+PASS meter.hidden: IDL set to -Infinity should not throw 
+PASS meter.hidden: IDL set to -Infinity followed by hasAttribute() 
+PASS meter.hidden: IDL set to -Infinity followed by IDL get 
+PASS meter.hidden: IDL set to &quot;\0&quot; should not throw 
+PASS meter.hidden: IDL set to &quot;\0&quot; followed by hasAttribute() 
+PASS meter.hidden: IDL set to &quot;\0&quot; followed by IDL get 
+PASS meter.hidden: IDL set to object &quot;test-toString&quot; should not throw 
+PASS meter.hidden: IDL set to object &quot;test-toString&quot; followed by hasAttribute() 
+PASS meter.hidden: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS meter.hidden: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS meter.hidden: IDL set to object &quot;test-valueOf&quot; followed by hasAttribute() 
+PASS meter.hidden: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS meter.accessKey: typeof IDL attribute 
+PASS meter.accessKey: IDL get with DOM attribute unset 
+PASS meter.accessKey: setAttribute() to &quot;&quot; followed by getAttribute() 
+PASS meter.accessKey: setAttribute() to &quot;&quot; followed by IDL get 
+PASS meter.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS meter.accessKey: setAttribute() to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS meter.accessKey: setAttribute() to undefined followed by getAttribute() 
+PASS meter.accessKey: setAttribute() to undefined followed by IDL get 
+PASS meter.accessKey: setAttribute() to 7 followed by getAttribute() 
+PASS meter.accessKey: setAttribute() to 7 followed by IDL get 
+PASS meter.accessKey: setAttribute() to 1.5 followed by getAttribute() 
+PASS meter.accessKey: setAttribute() to 1.5 followed by IDL get 
+PASS meter.accessKey: setAttribute() to true followed by getAttribute() 
+PASS meter.accessKey: setAttribute() to true followed by IDL get 
+PASS meter.accessKey: setAttribute() to false followed by getAttribute() 
+PASS meter.accessKey: setAttribute() to false followed by IDL get 
+PASS meter.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS meter.accessKey: setAttribute() to object &quot;[object Object]&quot; followed by IDL get 
+PASS meter.accessKey: setAttribute() to NaN followed by getAttribute() 
+PASS meter.accessKey: setAttribute() to NaN followed by IDL get 
+PASS meter.accessKey: setAttribute() to Infinity followed by getAttribute() 
+PASS meter.accessKey: setAttribute() to Infinity followed by IDL get 
+PASS meter.accessKey: setAttribute() to -Infinity followed by getAttribute() 
+PASS meter.accessKey: setAttribute() to -Infinity followed by IDL get 
+PASS meter.accessKey: setAttribute() to &quot;\0&quot; followed by getAttribute() 
+PASS meter.accessKey: setAttribute() to &quot;\0&quot; followed by IDL get 
+PASS meter.accessKey: setAttribute() to null followed by getAttribute() 
+PASS meter.accessKey: setAttribute() to null followed by IDL get 
+PASS meter.accessKey: setAttribute() to object &quot;test-toString&quot; followed by getAttribute() 
+PASS meter.accessKey: setAttribute() to object &quot;test-toString&quot; followed by IDL get 
+PASS meter.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS meter.accessKey: setAttribute() to object &quot;test-valueOf&quot; followed by IDL get 
+PASS meter.accessKey: IDL set to &quot;&quot; should not throw 
+PASS meter.accessKey: IDL set to &quot;&quot; followed by getAttribute() 
+PASS meter.accessKey: IDL set to &quot;&quot; followed by IDL get 
+PASS meter.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; should not throw 
+PASS meter.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by getAttribute() 
+PASS meter.accessKey: IDL set to &quot; \0\x01\x02\x03\x04\x05\x06\x07 \b\t\n\v\f\r\x0e\x0f \x10\x11\x12\x13\x14\x15\x16\x17 \x18\x19\x1a\x1b\x1c\x1d\x1e\x1f  foo &quot; followed by IDL get 
+PASS meter.accessKey: IDL set to undefined should not throw 
+PASS meter.accessKey: IDL set to undefined followed by getAttribute() 
+PASS meter.accessKey: IDL set to undefined followed by IDL get 
+PASS meter.accessKey: IDL set to 7 should not throw 
+PASS meter.accessKey: IDL set to 7 followed by getAttribute() 
+PASS meter.accessKey: IDL set to 7 followed by IDL get 
+PASS meter.accessKey: IDL set to 1.5 should not throw 
+PASS meter.accessKey: IDL set to 1.5 followed by getAttribute() 
+PASS meter.accessKey: IDL set to 1.5 followed by IDL get 
+PASS meter.accessKey: IDL set to true should not throw 
+PASS meter.accessKey: IDL set to true followed by getAttribute() 
+PASS meter.accessKey: IDL set to true followed by IDL get 
+PASS meter.accessKey: IDL set to false should not throw 
+PASS meter.accessKey: IDL set to false followed by getAttribute() 
+PASS meter.accessKey: IDL set to false followed by IDL get 
+PASS meter.accessKey: IDL set to object &quot;[object Object]&quot; should not throw 
+PASS meter.accessKey: IDL set to object &quot;[object Object]&quot; followed by getAttribute() 
+PASS meter.accessKey: IDL set to object &quot;[object Object]&quot; followed by IDL get 
+PASS meter.accessKey: IDL set to NaN should not throw 
+PASS meter.accessKey: IDL set to NaN followed by getAttribute() 
+PASS meter.accessKey: IDL set to NaN followed by IDL get 
+PASS meter.accessKey: IDL set to Infinity should not throw 
+PASS meter.accessKey: IDL set to Infinity followed by getAttribute() 
+PASS meter.accessKey: IDL set to Infinity followed by IDL get 
+PASS meter.accessKey: IDL set to -Infinity should not throw 
+PASS meter.accessKey: IDL set to -Infinity followed by getAttribute() 
+PASS meter.accessKey: IDL set to -Infinity followed by IDL get 
+PASS meter.accessKey: IDL set to &quot;\0&quot; should not throw 
+PASS meter.accessKey: IDL set to &quot;\0&quot; followed by getAttribute() 
+PASS meter.accessKey: IDL set to &quot;\0&quot; followed by IDL get 
+PASS meter.accessKey: IDL set to null should not throw 
+PASS meter.accessKey: IDL set to null followed by getAttribute() 
+PASS meter.accessKey: IDL set to null followed by IDL get 
+PASS meter.accessKey: IDL set to object &quot;test-toString&quot; should not throw 
+PASS meter.accessKey: IDL set to object &quot;test-toString&quot; followed by getAttribute() 
+PASS meter.accessKey: IDL set to object &quot;test-toString&quot; followed by IDL get 
+PASS meter.accessKey: IDL set to object &quot;test-valueOf&quot; should not throw 
+PASS meter.accessKey: IDL set to object &quot;test-valueOf&quot; followed by getAttribute() 
+PASS meter.accessKey: IDL set to object &quot;test-valueOf&quot; followed by IDL get 
+PASS meter.tabIndex: typeof IDL attribute 
+PASS meter.tabIndex: setAttribute() to -36 followed by getAttribute() 
+PASS meter.tabIndex: setAttribute() to -36 followed by IDL get 
+PASS meter.tabIndex: setAttribute() to -1 followed by getAttribute() 
+PASS meter.tabIndex: setAttribute() to -1 followed by IDL get 
+PASS meter.tabIndex: setAttribute() to 0 followed by getAttribute() 
+PASS meter.tabIndex: setAttribute() to 0 followed by IDL get 
+PASS meter.tabIndex: setAttribute() to 1 followed by getAttribute() 
+PASS meter.tabIndex: setAttribute() to 1 followed by IDL get 
+PASS meter.tabIndex: setAttribute() to 2147483647 followed by getAttribute() 
+PASS meter.tabIndex: setAttribute() to 2147483647 followed by IDL get 
+PASS meter.tabIndex: setAttribute() to -2147483648 followed by getAttribute() 
+PASS meter.tabIndex: setAttribute() to -2147483648 followed by IDL get 
+PASS meter.tabIndex: setAttribute() to &quot;-1&quot; followed by getAttribute() 
+PASS meter.tabIndex: setAttribute() to &quot;-1&quot; followed by IDL get 
+PASS meter.tabIndex: setAttribute() to &quot;-0&quot; followed by getAttribute() 
+PASS meter.tabIndex: setAttribute() to &quot;-0&quot; followed by IDL get 
+PASS meter.tabIndex: setAttribute() to &quot;0&quot; followed by getAttribute() 
+PASS meter.tabIndex: setAttribute() to &quot;0&quot; followed by IDL get 
+PASS meter.tabIndex: setAttribute() to &quot;1&quot; followed by getAttribute() 
+PASS meter.tabIndex: setAttribute() to &quot;1&quot; followed by IDL get 
+PASS meter.tabIndex: setAttribute() to &quot;\t7&quot; followed by getAttribute() 
+PASS meter.tabIndex: setAttribute() to &quot;\t7&quot; followed by IDL get 
+PASS meter.tabIndex: setAttribute() to &quot;\f7&quot; followed by getAttribute() 
+PASS meter.tabIndex: setAttribute() to &quot;\f7&quot; followed by IDL get 
+PASS meter.tabIndex: setAttribute() to &quot; 7&quot; followed by getAttribute() 
+PASS meter.tabIndex: setAttribute() to &quot; 7&quot; followed by IDL get 
+PASS meter.tabIndex: setAttribute() to &quot;\n7&quot; followed by getAttribute() 
+PASS meter.tabIndex: setAttribute() to &quot;\n7&quot; followed by IDL get 
+PASS meter.tabIndex: setAttribute() to &quot;\r7&quot; followed by getAttribute() 
+PASS meter.tabIndex: setAttribute() to &quot;\r7&quot; followed by IDL get 
+PASS meter.tabIndex: setAttribute() to 1.5 followed by getAttribute() 
+PASS meter.tabIndex: setAttribute() to 1.5 followed by IDL get 
+PASS meter.tabIndex: setAttribute() to object &quot;2&quot; followed by getAttribute() 
+PASS meter.tabIndex: setAttribute() to object &quot;2&quot; followed by IDL get 
+PASS meter.tabIndex: IDL set to -36 should not throw 
+PASS meter.tabIndex: IDL set to -36 followed by getAttribute() 
+PASS meter.tabIndex: IDL set to -36 followed by IDL get 
+PASS meter.tabIndex: IDL set to -1 should not throw 
+PASS meter.tabIndex: IDL set to -1 followed by getAttribute() 
+PASS meter.tabIndex: IDL set to -1 followed by IDL get 
+PASS meter.tabIndex: IDL set to 0 should not throw 
+PASS meter.tabIndex: IDL set to 0 followed by getAttribute() 
+PASS meter.tabIndex: IDL set to 0 followed by IDL get 
+PASS meter.tabIndex: IDL set to 1 should not throw 
+PASS meter.tabIndex: IDL set to 1 followed by getAttribute() 
+PASS meter.tabIndex: IDL set to 1 followed by IDL get 
+PASS meter.tabIndex: IDL set to 2147483647 should not throw 
+PASS meter.tabIndex: IDL set to 2147483647 followed by getAttribute() 
+PASS meter.tabIndex: IDL set to 2147483647 followed by IDL get 
+PASS meter.tabIndex: IDL set to -2147483648 should not throw 
+PASS meter.tabIndex: IDL set to -2147483648 followed by getAttribute() 
+PASS meter.tabIndex: IDL set to -2147483648 followed by IDL get 
+
</ins></span></pre></div>
<a id="branchessafari602branchLayoutTestsplatformmacimportedw3cwebplatformtestshtmlsemanticsformsconstraintsformvalidationvaliditybadInputexpectedtxt"></a>
<div class="addfile"><h4>Added: branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-badInput-expected.txt (0 => 204212)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-badInput-expected.txt                                (rev 0)
+++ branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-badInput-expected.txt        2016-08-06 01:19:14 UTC (rev 204212)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+
+
+PASS [INPUT in EMAIL status] The multiple attribute is false and the value attribute is empty 
+PASS [INPUT in EMAIL status] The multiple attribute is false and the value attribute is a valid e-mail address 
+PASS [INPUT in EMAIL status] The multiple attribute is true and the value contains valid e-mail addresses 
+PASS [INPUT in EMAIL status] The multiple attribute is true and the value attribute contains a ',' 
+FAIL [INPUT in DATETIME-LOCAL status] The datetime-local type must be supported. assert_equals: The datetime-local type should be supported. expected &quot;datetime-local&quot; but got &quot;text&quot;
+FAIL [INPUT in COLOR status] The color type must be supported. assert_equals: The color type should be supported. expected &quot;color&quot; but got &quot;text&quot;
+
</ins></span></pre></div>
<a id="branchessafari602branchLayoutTestsplatformmacimportedw3cwebplatformtestshtmlsemanticsformsconstraintsformvalidationwillValidateexpectedtxt"></a>
<div class="addfile"><h4>Added: branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate-expected.txt (0 => 204212)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate-expected.txt                                (rev 0)
+++ branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate-expected.txt        2016-08-06 01:19:14 UTC (rev 204212)
</span><span class="lines">@@ -0,0 +1,59 @@
</span><ins>+
+
+PASS [INPUT in HIDDEN status] Must be barred from the constraint validation 
+PASS [INPUT in BUTTON status] Must be barred from the constraint validation 
+PASS [INPUT in RESET status] Must be barred from the constraint validation 
+PASS [BUTTON in BUTTON status] Must be barred from the constraint validation 
+PASS [BUTTON in RESET status] Must be barred from the constraint validation 
+FAIL [fieldset]  Must not be barred from the constraint validation assert_true: The willValidate attribute should be true. expected true got false
+FAIL [output]  Must not be barred from the constraint validation assert_true: The willValidate attribute should be true. expected true got false
+PASS [object]  Must be barred from the constraint validation 
+PASS [keygen]  Must be barred from the constraint validation 
+PASS [INPUT in TEXT status] Must be barred from the constraint validation if it is disabled 
+PASS [INPUT in TEXT status] The willValidate attribute must be true if an element is mutable 
+PASS [INPUT in TEXT status] Must be barred from the constraint validation if it is readonly 
+PASS [INPUT in TEXT status] The willValidate attribute must be false if it has a datalist ancestor 
+PASS [INPUT in SEARCH status] Must be barred from the constraint validation if it is disabled 
+PASS [INPUT in SEARCH status] The willValidate attribute must be true if an element is mutable 
+PASS [INPUT in SEARCH status] Must be barred from the constraint validation if it is readonly 
+PASS [INPUT in SEARCH status] The willValidate attribute must be false if it has a datalist ancestor 
+PASS [INPUT in TEL status] Must be barred from the constraint validation if it is disabled 
+PASS [INPUT in TEL status] The willValidate attribute must be true if an element is mutable 
+PASS [INPUT in TEL status] Must be barred from the constraint validation if it is readonly 
+PASS [INPUT in TEL status] The willValidate attribute must be false if it has a datalist ancestor 
+PASS [INPUT in URL status] Must be barred from the constraint validation if it is disabled 
+PASS [INPUT in URL status] The willValidate attribute must be true if an element is mutable 
+PASS [INPUT in URL status] Must be barred from the constraint validation if it is readonly 
+PASS [INPUT in URL status] The willValidate attribute must be false if it has a datalist ancestor 
+PASS [INPUT in EMAIL status] Must be barred from the constraint validation if it is disabled 
+PASS [INPUT in EMAIL status] The willValidate attribute must be true if an element is mutable 
+PASS [INPUT in EMAIL status] Must be barred from the constraint validation if it is readonly 
+PASS [INPUT in EMAIL status] The willValidate attribute must be false if it has a datalist ancestor 
+PASS [INPUT in PASSWORD status] Must be barred from the constraint validation if it is disabled 
+PASS [INPUT in PASSWORD status] The willValidate attribute must be true if an element is mutable 
+PASS [INPUT in PASSWORD status] Must be barred from the constraint validation if it is readonly 
+PASS [INPUT in PASSWORD status] The willValidate attribute must be false if it has a datalist ancestor 
+FAIL [INPUT in DATETIME status] The datetime type must be supported. assert_equals: The datetime type should be supported. expected &quot;datetime&quot; but got &quot;text&quot;
+FAIL [INPUT in DATE status] The date type must be supported. assert_equals: The date type should be supported. expected &quot;date&quot; but got &quot;text&quot;
+FAIL [INPUT in MONTH status] The month type must be supported. assert_equals: The month type should be supported. expected &quot;month&quot; but got &quot;text&quot;
+FAIL [INPUT in WEEK status] The week type must be supported. assert_equals: The week type should be supported. expected &quot;week&quot; but got &quot;text&quot;
+FAIL [INPUT in TIME status] The time type must be supported. assert_equals: The time type should be supported. expected &quot;time&quot; but got &quot;text&quot;
+FAIL [INPUT in COLOR status] The color type must be supported. assert_equals: The color type should be supported. expected &quot;color&quot; but got &quot;text&quot;
+PASS [INPUT in FILE status] Must be barred from the constraint validation if it is disabled 
+PASS [INPUT in FILE status] The willValidate attribute must be true if an element is mutable 
+PASS [INPUT in FILE status] Must be barred from the constraint validation if it is readonly 
+PASS [INPUT in FILE status] The willValidate attribute must be false if it has a datalist ancestor 
+PASS [INPUT in SUBMIT status] Must be barred from the constraint validation if it is disabled 
+PASS [INPUT in SUBMIT status] The willValidate attribute must be true if an element is mutable 
+PASS [INPUT in SUBMIT status] Must be barred from the constraint validation if it is readonly 
+PASS [INPUT in SUBMIT status] The willValidate attribute must be false if it has a datalist ancestor 
+PASS [BUTTON in SUBMIT status] Must be barred from the constraint validation 
+PASS [BUTTON in SUBMIT status] The willValidate attribute must be true if an element is mutable 
+PASS [BUTTON in SUBMIT status] The willValidate attribute must be false if it has a datalist ancestor 
+PASS [select]  Must be barred from the constraint validation 
+PASS [select]  The willValidate attribute must be true if an element is mutable 
+PASS [select]  The willValidate attribute must be false if it has a datalist ancestor 
+PASS [textarea]  Must be barred from the constraint validation 
+PASS [textarea]  The willValidate attribute must be true if an element is mutable 
+PASS [textarea]  The willValidate attribute must be false if it has a datalist ancestor 
+
</ins></span></pre></div>
<a id="branchessafari602branchLayoutTestsplatformmacimportedw3cwebplatformtestshtmlsemanticsformstextfieldselectionselectionnotapplicationexpectedtxt"></a>
<div class="addfile"><h4>Added: branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/textfieldselection/selection-not-application-expected.txt (0 => 204212)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/textfieldselection/selection-not-application-expected.txt                                (rev 0)
+++ branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/textfieldselection/selection-not-application-expected.txt        2016-08-06 01:19:14 UTC (rev 204212)
</span><span class="lines">@@ -0,0 +1,58 @@
</span><ins>+
+FAIL text field selection for the input hidden assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; threw object &quot;TypeError: Type error&quot; that is not a DOMException InvalidStateError: property &quot;code&quot; is equal to undefined, expected 11
+FAIL text field selection for the input email assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; did not throw
+FAIL text field selection for the input datetime assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; did not throw
+FAIL text field selection for the input date assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; did not throw
+FAIL text field selection for the input month assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; did not throw
+FAIL text field selection for the input week assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; did not throw
+FAIL text field selection for the input time assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; did not throw
+FAIL text field selection for the input number assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; did not throw
+FAIL text field selection for the input range assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; threw object &quot;TypeError: Type error&quot; that is not a DOMException InvalidStateError: property &quot;code&quot; is equal to undefined, expected 11
+FAIL text field selection for the input color assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; did not throw
+FAIL text field selection for the input checkbox assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; threw object &quot;TypeError: Type error&quot; that is not a DOMException InvalidStateError: property &quot;code&quot; is equal to undefined, expected 11
+FAIL text field selection for the input radio assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; threw object &quot;TypeError: Type error&quot; that is not a DOMException InvalidStateError: property &quot;code&quot; is equal to undefined, expected 11
+FAIL text field selection for the input file assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; threw object &quot;TypeError: Type error&quot; that is not a DOMException InvalidStateError: property &quot;code&quot; is equal to undefined, expected 11
+FAIL text field selection for the input submit assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; threw object &quot;TypeError: Type error&quot; that is not a DOMException InvalidStateError: property &quot;code&quot; is equal to undefined, expected 11
+FAIL text field selection for the input image assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; threw object &quot;TypeError: Type error&quot; that is not a DOMException InvalidStateError: property &quot;code&quot; is equal to undefined, expected 11
+FAIL text field selection for the input reset assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; threw object &quot;TypeError: Type error&quot; that is not a DOMException InvalidStateError: property &quot;code&quot; is equal to undefined, expected 11
+FAIL text field selection for the input button assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; threw object &quot;TypeError: Type error&quot; that is not a DOMException InvalidStateError: property &quot;code&quot; is equal to undefined, expected 11
+PASS text field selection for the input text 
+PASS text field selection for the input search 
+PASS text field selection for the input tel 
+PASS text field selection for the input url 
+PASS text field selection for the input password 
+
</ins></span></pre></div>
<a id="branchessafari602branchLayoutTestsplatformmacimportedw3cwebplatformtestshtmlsemanticsformstheinputelementselectionexpectedtxt"></a>
<div class="addfile"><h4>Added: branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/selection-expected.txt (0 => 204212)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/selection-expected.txt                                (rev 0)
+++ branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/selection-expected.txt        2016-08-06 01:19:14 UTC (rev 204212)
</span><span class="lines">@@ -0,0 +1,48 @@
</span><ins>+
+PASS Input element programmatic selection support 
+PASS input type text should support the select() method 
+PASS input type search should support the select() method 
+PASS input type url should support the select() method 
+PASS input type tel should support the select() method 
+PASS input type email should support the select() method 
+PASS input type password should support the select() method 
+FAIL input type date should support the select() method assert_equals: the given input type is not supported expected &quot;date&quot; but got &quot;text&quot;
+FAIL input type month should support the select() method assert_equals: the given input type is not supported expected &quot;month&quot; but got &quot;text&quot;
+FAIL input type week should support the select() method assert_equals: the given input type is not supported expected &quot;week&quot; but got &quot;text&quot;
+FAIL input type time should support the select() method assert_equals: the given input type is not supported expected &quot;time&quot; but got &quot;text&quot;
+FAIL input type datetime-local should support the select() method assert_equals: the given input type is not supported expected &quot;datetime-local&quot; but got &quot;text&quot;
+PASS input type number should support the select() method 
+FAIL input type color should support the select() method assert_equals: the given input type is not supported expected &quot;color&quot; but got &quot;text&quot;
+PASS input type file should support the select() method 
+FAIL input type hidden should not support the select() method assert_throws: function &quot;function () { input.select(); }&quot; did not throw
+FAIL input type range should not support the select() method assert_throws: function &quot;function () { input.select(); }&quot; did not throw
+FAIL input type checkbox should not support the select() method assert_throws: function &quot;function () { input.select(); }&quot; did not throw
+FAIL input type radio should not support the select() method assert_throws: function &quot;function () { input.select(); }&quot; did not throw
+FAIL input type submit should not support the select() method assert_throws: function &quot;function () { input.select(); }&quot; did not throw
+FAIL input type image should not support the select() method assert_throws: function &quot;function () { input.select(); }&quot; did not throw
+FAIL input type reset should not support the select() method assert_throws: function &quot;function () { input.select(); }&quot; did not throw
+FAIL input type button should not support the select() method assert_throws: function &quot;function () { input.select(); }&quot; did not throw
+PASS Input element programmatic selection support 1 
+PASS input type text should support all selection attributes and methods 
+PASS input type search should support all selection attributes and methods 
+PASS input type url should support all selection attributes and methods 
+PASS input type tel should support all selection attributes and methods 
+PASS input type password should support all selection attributes and methods 
+FAIL input type hidden should not support variable-length selections Type error
+FAIL input type email should not support variable-length selections assert_equals: getting input.selectionStart expected (object) null but got (number) 0
+FAIL input type date should not support variable-length selections assert_equals: the given input type is not supported expected &quot;date&quot; but got &quot;text&quot;
+FAIL input type month should not support variable-length selections assert_equals: the given input type is not supported expected &quot;month&quot; but got &quot;text&quot;
+FAIL input type week should not support variable-length selections assert_equals: the given input type is not supported expected &quot;week&quot; but got &quot;text&quot;
+FAIL input type time should not support variable-length selections assert_equals: the given input type is not supported expected &quot;time&quot; but got &quot;text&quot;
+FAIL input type datetime-local should not support variable-length selections assert_equals: the given input type is not supported expected &quot;datetime-local&quot; but got &quot;text&quot;
+FAIL input type number should not support variable-length selections assert_equals: getting input.selectionStart expected (object) null but got (number) 0
+FAIL input type range should not support variable-length selections Type error
+FAIL input type color should not support variable-length selections assert_equals: the given input type is not supported expected &quot;color&quot; but got &quot;text&quot;
+FAIL input type checkbox should not support variable-length selections Type error
+FAIL input type radio should not support variable-length selections Type error
+FAIL input type file should not support variable-length selections Type error
+FAIL input type submit should not support variable-length selections Type error
+FAIL input type image should not support variable-length selections Type error
+FAIL input type reset should not support variable-length selections Type error
+FAIL input type button should not support variable-length selections Type error
+
</ins></span></pre></div>
<a id="branchessafari602branchLayoutTestsplatformmacimportedw3cwebplatformtestshtmlsemanticsformstheinputelementtypechangestateexpectedtxt"></a>
<div class="addfile"><h4>Added: branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/type-change-state-expected.txt (0 => 204212)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/type-change-state-expected.txt                                (rev 0)
+++ branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/type-change-state-expected.txt        2016-08-06 01:19:14 UTC (rev 204212)
</span><span class="lines">@@ -0,0 +1,464 @@
</span><ins>+
+PASS change state from hidden to text 
+PASS change state from hidden to search 
+PASS change state from hidden to tel 
+PASS change state from hidden to url 
+PASS change state from hidden to email 
+PASS change state from hidden to password 
+FAIL change state from hidden to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from hidden to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from hidden to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from hidden to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from hidden to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from hidden to number 
+PASS change state from hidden to range 
+FAIL change state from hidden to color assert_equals: input.value should be #000000 after change of state expected &quot;#000000&quot; but got &quot;  foobar  &quot;
+PASS change state from hidden to checkbox 
+PASS change state from hidden to radio 
+FAIL change state from hidden to file assert_equals: expected &quot;&quot; but got &quot;  foo\rbar  &quot;
+PASS change state from hidden to submit 
+PASS change state from hidden to image 
+PASS change state from hidden to reset 
+PASS change state from hidden to button 
+FAIL change state from text to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+PASS change state from text to search 
+PASS change state from text to tel 
+PASS change state from text to url 
+PASS change state from text to email 
+PASS change state from text to password 
+FAIL change state from text to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from text to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from text to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from text to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from text to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from text to number 
+PASS change state from text to range 
+FAIL change state from text to color assert_equals: input.value should be #000000 after change of state expected &quot;#000000&quot; but got &quot;  foobar  &quot;
+FAIL change state from text to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from text to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from text to file assert_equals: expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from text to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from text to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from text to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from text to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from search to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+PASS change state from search to text 
+PASS change state from search to tel 
+PASS change state from search to url 
+PASS change state from search to email 
+PASS change state from search to password 
+FAIL change state from search to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from search to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from search to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from search to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from search to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from search to number 
+PASS change state from search to range 
+FAIL change state from search to color assert_equals: input.value should be #000000 after change of state expected &quot;#000000&quot; but got &quot;  foobar  &quot;
+FAIL change state from search to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from search to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from search to file assert_equals: expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from search to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from search to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from search to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from search to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from tel to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+PASS change state from tel to text 
+PASS change state from tel to search 
+PASS change state from tel to url 
+PASS change state from tel to email 
+PASS change state from tel to password 
+FAIL change state from tel to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from tel to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from tel to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from tel to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from tel to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from tel to number 
+PASS change state from tel to range 
+FAIL change state from tel to color assert_equals: input.value should be #000000 after change of state expected &quot;#000000&quot; but got &quot;  foobar  &quot;
+FAIL change state from tel to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from tel to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from tel to file assert_equals: expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from tel to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from tel to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from tel to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from tel to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from url to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;foobar&quot;
+FAIL change state from url to text assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;foobar&quot;
+FAIL change state from url to search assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;foobar&quot;
+FAIL change state from url to tel assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;foobar&quot;
+PASS change state from url to email 
+FAIL change state from url to password assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;foobar&quot;
+FAIL change state from url to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;foobar&quot;
+FAIL change state from url to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;foobar&quot;
+FAIL change state from url to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;foobar&quot;
+FAIL change state from url to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;foobar&quot;
+FAIL change state from url to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;foobar&quot;
+PASS change state from url to number 
+PASS change state from url to range 
+FAIL change state from url to color assert_equals: input.value should be #000000 after change of state expected &quot;#000000&quot; but got &quot;foobar&quot;
+FAIL change state from url to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;foobar&quot;
+FAIL change state from url to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;foobar&quot;
+FAIL change state from url to file assert_equals: expected &quot;&quot; but got &quot;foobar&quot;
+FAIL change state from url to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;foobar&quot;
+FAIL change state from url to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;foobar&quot;
+FAIL change state from url to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;foobar&quot;
+FAIL change state from url to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;foobar&quot;
+FAIL change state from email to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;foobar&quot;
+FAIL change state from email to text assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;foobar&quot;
+FAIL change state from email to search assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;foobar&quot;
+FAIL change state from email to tel assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;foobar&quot;
+PASS change state from email to url 
+FAIL change state from email to password assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;foobar&quot;
+FAIL change state from email to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;foobar&quot;
+FAIL change state from email to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;foobar&quot;
+FAIL change state from email to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;foobar&quot;
+FAIL change state from email to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;foobar&quot;
+FAIL change state from email to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;foobar&quot;
+PASS change state from email to number 
+PASS change state from email to range 
+FAIL change state from email to color assert_equals: input.value should be #000000 after change of state expected &quot;#000000&quot; but got &quot;foobar&quot;
+FAIL change state from email to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;foobar&quot;
+FAIL change state from email to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;foobar&quot;
+FAIL change state from email to file assert_equals: expected &quot;&quot; but got &quot;foobar&quot;
+FAIL change state from email to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;foobar&quot;
+FAIL change state from email to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;foobar&quot;
+FAIL change state from email to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;foobar&quot;
+FAIL change state from email to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;foobar&quot;
+FAIL change state from password to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+PASS change state from password to text 
+PASS change state from password to search 
+PASS change state from password to tel 
+PASS change state from password to url 
+PASS change state from password to email 
+FAIL change state from password to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from password to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from password to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from password to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from password to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from password to number 
+PASS change state from password to range 
+FAIL change state from password to color assert_equals: input.value should be #000000 after change of state expected &quot;#000000&quot; but got &quot;  foobar  &quot;
+FAIL change state from password to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from password to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from password to file assert_equals: expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from password to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from password to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from password to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from password to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from datetime to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+PASS change state from datetime to text 
+PASS change state from datetime to search 
+PASS change state from datetime to tel 
+PASS change state from datetime to url 
+PASS change state from datetime to email 
+PASS change state from datetime to password 
+FAIL change state from datetime to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from datetime to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from datetime to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from datetime to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from datetime to number 
+PASS change state from datetime to range 
+FAIL change state from datetime to color assert_equals: input.value should be #000000 after change of state expected &quot;#000000&quot; but got &quot;  foobar  &quot;
+FAIL change state from datetime to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from datetime to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from datetime to file assert_equals: expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from datetime to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from datetime to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from datetime to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from datetime to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from date to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+PASS change state from date to text 
+PASS change state from date to search 
+PASS change state from date to tel 
+PASS change state from date to url 
+PASS change state from date to email 
+PASS change state from date to password 
+FAIL change state from date to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from date to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from date to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from date to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from date to number 
+PASS change state from date to range 
+FAIL change state from date to color assert_equals: input.value should be #000000 after change of state expected &quot;#000000&quot; but got &quot;  foobar  &quot;
+FAIL change state from date to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from date to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from date to file assert_equals: expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from date to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from date to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from date to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from date to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from month to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+PASS change state from month to text 
+PASS change state from month to search 
+PASS change state from month to tel 
+PASS change state from month to url 
+PASS change state from month to email 
+PASS change state from month to password 
+FAIL change state from month to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from month to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from month to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from month to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from month to number 
+PASS change state from month to range 
+FAIL change state from month to color assert_equals: input.value should be #000000 after change of state expected &quot;#000000&quot; but got &quot;  foobar  &quot;
+FAIL change state from month to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from month to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from month to file assert_equals: expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from month to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from month to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from month to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from month to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from week to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+PASS change state from week to text 
+PASS change state from week to search 
+PASS change state from week to tel 
+PASS change state from week to url 
+PASS change state from week to email 
+PASS change state from week to password 
+FAIL change state from week to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from week to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from week to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from week to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from week to number 
+PASS change state from week to range 
+FAIL change state from week to color assert_equals: input.value should be #000000 after change of state expected &quot;#000000&quot; but got &quot;  foobar  &quot;
+FAIL change state from week to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from week to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from week to file assert_equals: expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from week to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from week to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from week to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from week to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from time to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+PASS change state from time to text 
+PASS change state from time to search 
+PASS change state from time to tel 
+PASS change state from time to url 
+PASS change state from time to email 
+PASS change state from time to password 
+FAIL change state from time to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from time to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from time to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from time to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from time to number 
+PASS change state from time to range 
+FAIL change state from time to color assert_equals: input.value should be #000000 after change of state expected &quot;#000000&quot; but got &quot;  foobar  &quot;
+FAIL change state from time to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from time to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from time to file assert_equals: expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from time to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from time to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from time to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from time to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from number to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;&quot;
+FAIL change state from number to text assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;&quot;
+FAIL change state from number to search assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;&quot;
+FAIL change state from number to tel assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;&quot;
+FAIL change state from number to url assert_equals: input.value should be foobar after change of state expected &quot;foobar&quot; but got &quot;&quot;
+FAIL change state from number to email assert_equals: input.value should be foobar after change of state expected &quot;foobar&quot; but got &quot;&quot;
+FAIL change state from number to password assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;&quot;
+PASS change state from number to datetime 
+PASS change state from number to date 
+PASS change state from number to month 
+PASS change state from number to week 
+PASS change state from number to time 
+PASS change state from number to range 
+FAIL change state from number to color assert_equals: input.value should be #000000 after change of state expected &quot;#000000&quot; but got &quot;&quot;
+FAIL change state from number to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;&quot;
+FAIL change state from number to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;&quot;
+PASS change state from number to file 
+FAIL change state from number to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;&quot;
+FAIL change state from number to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;&quot;
+FAIL change state from number to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;&quot;
+FAIL change state from number to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;&quot;
+FAIL change state from range to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;50&quot;
+FAIL change state from range to text assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;50&quot;
+FAIL change state from range to search assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;50&quot;
+FAIL change state from range to tel assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;50&quot;
+FAIL change state from range to url assert_equals: input.value should be foobar after change of state expected &quot;foobar&quot; but got &quot;50&quot;
+FAIL change state from range to email assert_equals: input.value should be foobar after change of state expected &quot;foobar&quot; but got &quot;50&quot;
+FAIL change state from range to password assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;50&quot;
+FAIL change state from range to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;50&quot;
+FAIL change state from range to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;50&quot;
+FAIL change state from range to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;50&quot;
+FAIL change state from range to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;50&quot;
+FAIL change state from range to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;50&quot;
+FAIL change state from range to number assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;50&quot;
+FAIL change state from range to color assert_equals: input.value should be #000000 after change of state expected &quot;#000000&quot; but got &quot;50&quot;
+FAIL change state from range to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;50&quot;
+FAIL change state from range to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;50&quot;
+FAIL change state from range to file assert_equals: expected &quot;&quot; but got &quot;50&quot;
+FAIL change state from range to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;50&quot;
+FAIL change state from range to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;50&quot;
+FAIL change state from range to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;50&quot;
+FAIL change state from range to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;50&quot;
+FAIL change state from color to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+PASS change state from color to text 
+PASS change state from color to search 
+PASS change state from color to tel 
+PASS change state from color to url 
+PASS change state from color to email 
+PASS change state from color to password 
+FAIL change state from color to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from color to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from color to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from color to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from color to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from color to number 
+PASS change state from color to range 
+FAIL change state from color to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from color to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from color to file assert_equals: expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from color to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from color to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from color to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from color to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+PASS change state from checkbox to hidden 
+PASS change state from checkbox to text 
+PASS change state from checkbox to search 
+PASS change state from checkbox to tel 
+PASS change state from checkbox to url 
+PASS change state from checkbox to email 
+PASS change state from checkbox to password 
+FAIL change state from checkbox to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from checkbox to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from checkbox to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from checkbox to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from checkbox to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from checkbox to number 
+PASS change state from checkbox to range 
+FAIL change state from checkbox to color assert_equals: input.value should be #000000 after change of state expected &quot;#000000&quot; but got &quot;  foobar  &quot;
+PASS change state from checkbox to radio 
+FAIL change state from checkbox to file assert_equals: expected &quot;&quot; but got &quot;  foo\rbar  &quot;
+PASS change state from checkbox to submit 
+PASS change state from checkbox to image 
+PASS change state from checkbox to reset 
+PASS change state from checkbox to button 
+PASS change state from radio to hidden 
+PASS change state from radio to text 
+PASS change state from radio to search 
+PASS change state from radio to tel 
+PASS change state from radio to url 
+PASS change state from radio to email 
+PASS change state from radio to password 
+FAIL change state from radio to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from radio to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from radio to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from radio to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from radio to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from radio to number 
+PASS change state from radio to range 
+FAIL change state from radio to color assert_equals: input.value should be #000000 after change of state expected &quot;#000000&quot; but got &quot;  foobar  &quot;
+PASS change state from radio to checkbox 
+FAIL change state from radio to file assert_equals: expected &quot;&quot; but got &quot;  foo\rbar  &quot;
+PASS change state from radio to submit 
+PASS change state from radio to image 
+PASS change state from radio to reset 
+PASS change state from radio to button 
+PASS change state from file to hidden 
+PASS change state from file to text 
+PASS change state from file to search 
+PASS change state from file to tel 
+PASS change state from file to url 
+PASS change state from file to email 
+PASS change state from file to password 
+PASS change state from file to datetime 
+PASS change state from file to date 
+PASS change state from file to month 
+PASS change state from file to week 
+PASS change state from file to time 
+PASS change state from file to number 
+PASS change state from file to range 
+PASS change state from file to color 
+PASS change state from file to checkbox 
+PASS change state from file to radio 
+PASS change state from file to submit 
+PASS change state from file to image 
+PASS change state from file to reset 
+PASS change state from file to button 
+PASS change state from submit to hidden 
+PASS change state from submit to text 
+PASS change state from submit to search 
+PASS change state from submit to tel 
+PASS change state from submit to url 
+PASS change state from submit to email 
+PASS change state from submit to password 
+FAIL change state from submit to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from submit to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from submit to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from submit to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from submit to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from submit to number 
+PASS change state from submit to range 
+FAIL change state from submit to color assert_equals: input.value should be #000000 after change of state expected &quot;#000000&quot; but got &quot;  foobar  &quot;
+PASS change state from submit to checkbox 
+PASS change state from submit to radio 
+FAIL change state from submit to file assert_equals: expected &quot;&quot; but got &quot;  foo\rbar  &quot;
+PASS change state from submit to image 
+PASS change state from submit to reset 
+PASS change state from submit to button 
+PASS change state from image to hidden 
+PASS change state from image to text 
+PASS change state from image to search 
+PASS change state from image to tel 
+PASS change state from image to url 
+PASS change state from image to email 
+PASS change state from image to password 
+FAIL change state from image to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from image to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from image to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from image to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from image to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from image to number 
+PASS change state from image to range 
+FAIL change state from image to color assert_equals: input.value should be #000000 after change of state expected &quot;#000000&quot; but got &quot;  foobar  &quot;
+PASS change state from image to checkbox 
+PASS change state from image to radio 
+FAIL change state from image to file assert_equals: expected &quot;&quot; but got &quot;  foo\rbar  &quot;
+PASS change state from image to submit 
+PASS change state from image to reset 
+PASS change state from image to button 
+PASS change state from reset to hidden 
+PASS change state from reset to text 
+PASS change state from reset to search 
+PASS change state from reset to tel 
+PASS change state from reset to url 
+PASS change state from reset to email 
+PASS change state from reset to password 
+FAIL change state from reset to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from reset to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from reset to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from reset to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from reset to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from reset to number 
+PASS change state from reset to range 
+FAIL change state from reset to color assert_equals: input.value should be #000000 after change of state expected &quot;#000000&quot; but got &quot;  foobar  &quot;
+PASS change state from reset to checkbox 
+PASS change state from reset to radio 
+FAIL change state from reset to file assert_equals: expected &quot;&quot; but got &quot;  foo\rbar  &quot;
+PASS change state from reset to submit 
+PASS change state from reset to image 
+PASS change state from reset to button 
+PASS change state from button to hidden 
+PASS change state from button to text 
+PASS change state from button to search 
+PASS change state from button to tel 
+PASS change state from button to url 
+PASS change state from button to email 
+PASS change state from button to password 
+FAIL change state from button to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from button to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from button to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from button to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from button to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from button to number 
+PASS change state from button to range 
+FAIL change state from button to color assert_equals: input.value should be #000000 after change of state expected &quot;#000000&quot; but got &quot;  foobar  &quot;
+PASS change state from button to checkbox 
+PASS change state from button to radio 
+FAIL change state from button to file assert_equals: expected &quot;&quot; but got &quot;  foo\rbar  &quot;
+PASS change state from button to submit 
+PASS change state from button to image 
+PASS change state from button to reset 
+
</ins></span></pre></div>
<a id="branchessafari602branchLayoutTestsplatformmacimportedw3cwebplatformtestshtmlsemanticsformstheinputelementvalueModeexpectedtxt"></a>
<div class="addfile"><h4>Added: branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/valueMode-expected.txt (0 => 204212)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/valueMode-expected.txt                                (rev 0)
+++ branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/valueMode-expected.txt        2016-08-06 01:19:14 UTC (rev 204212)
</span><span class="lines">@@ -0,0 +1,44 @@
</span><ins>+
+FAIL value IDL attribute of input type hidden without value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type hidden with value attribute assert_equals: expected &quot;bar&quot; but got &quot;foo&quot;
+PASS value IDL attribute of input type text without value attribute 
+PASS value IDL attribute of input type text with value attribute 
+PASS value IDL attribute of input type search without value attribute 
+PASS value IDL attribute of input type search with value attribute 
+PASS value IDL attribute of input type tel without value attribute 
+PASS value IDL attribute of input type tel with value attribute 
+PASS value IDL attribute of input type url without value attribute 
+PASS value IDL attribute of input type url with value attribute 
+PASS value IDL attribute of input type email without value attribute 
+PASS value IDL attribute of input type email with value attribute 
+PASS value IDL attribute of input type password without value attribute 
+PASS value IDL attribute of input type password with value attribute 
+FAIL value IDL attribute of input type datetime without value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type datetime with value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type date without value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type date with value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type month without value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type month with value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type week without value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type week with value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type time without value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type time with value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+PASS value IDL attribute of input type number without value attribute 
+PASS value IDL attribute of input type number with value attribute 
+PASS value IDL attribute of input type range without value attribute 
+PASS value IDL attribute of input type range with value attribute 
+FAIL value IDL attribute of input type color without value attribute assert_equals: expected &quot;#000000&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type color with value attribute assert_equals: expected &quot;#000000&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type checkbox without value attribute assert_equals: expected &quot;on&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type checkbox with value attribute assert_equals: expected &quot;bar&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type radio without value attribute assert_equals: expected &quot;on&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type radio with value attribute assert_equals: expected &quot;bar&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type submit without value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type submit with value attribute assert_equals: expected &quot;bar&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type image without value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type image with value attribute assert_equals: expected &quot;bar&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type reset without value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type reset with value attribute assert_equals: expected &quot;bar&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type button without value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type button with value attribute assert_equals: expected &quot;bar&quot; but got &quot;foo&quot;
+
</ins></span></pre></div>
<a id="branchessafari602branchLayoutTestsplatformmacimportedw3cwebplatformtestshtmlsemanticsinterfacesexpectedtxt"></a>
<div class="addfile"><h4>Added: branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/interfaces-expected.txt (0 => 204212)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/interfaces-expected.txt                                (rev 0)
+++ branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/interfaces-expected.txt        2016-08-06 01:19:14 UTC (rev 204212)
</span><span class="lines">@@ -0,0 +1,296 @@
</span><ins>+
+PASS Interfaces for a 
+PASS Interfaces for A 
+PASS Interfaces for abbr 
+PASS Interfaces for ABBR 
+PASS Interfaces for acronym 
+PASS Interfaces for ACRONYM 
+PASS Interfaces for address 
+PASS Interfaces for ADDRESS 
+PASS Interfaces for applet 
+PASS Interfaces for APPLET 
+PASS Interfaces for area 
+PASS Interfaces for AREA 
+PASS Interfaces for article 
+PASS Interfaces for ARTICLE 
+PASS Interfaces for aside 
+PASS Interfaces for ASIDE 
+PASS Interfaces for audio 
+PASS Interfaces for AUDIO 
+PASS Interfaces for b 
+PASS Interfaces for B 
+PASS Interfaces for base 
+PASS Interfaces for BASE 
+FAIL Interfaces for basefont assert_equals: Element basefont should have HTMLElement as its primary interface. expected &quot;[object HTMLElement]&quot; but got &quot;[object HTMLUnknownElement]&quot;
+FAIL Interfaces for BASEFONT assert_equals: Element BASEFONT should have HTMLElement as its primary interface. expected &quot;[object HTMLElement]&quot; but got &quot;[object HTMLUnknownElement]&quot;
+PASS Interfaces for bdi 
+PASS Interfaces for BDI 
+PASS Interfaces for bdo 
+PASS Interfaces for BDO 
+PASS Interfaces for bgsound 
+PASS Interfaces for BGSOUND 
+PASS Interfaces for big 
+PASS Interfaces for BIG 
+PASS Interfaces for blink 
+PASS Interfaces for BLINK 
+PASS Interfaces for blockquote 
+PASS Interfaces for BLOCKQUOTE 
+PASS Interfaces for body 
+PASS Interfaces for BODY 
+PASS Interfaces for br 
+PASS Interfaces for BR 
+PASS Interfaces for button 
+PASS Interfaces for BUTTON 
+PASS Interfaces for canvas 
+PASS Interfaces for CANVAS 
+PASS Interfaces for caption 
+PASS Interfaces for CAPTION 
+PASS Interfaces for center 
+PASS Interfaces for CENTER 
+PASS Interfaces for cite 
+PASS Interfaces for CITE 
+PASS Interfaces for code 
+PASS Interfaces for CODE 
+PASS Interfaces for col 
+PASS Interfaces for COL 
+PASS Interfaces for colgroup 
+PASS Interfaces for COLGROUP 
+FAIL Interfaces for command assert_equals: Element command should have HTMLUnknownElement as its primary interface. expected &quot;[object HTMLUnknownElement]&quot; but got &quot;[object HTMLElement]&quot;
+FAIL Interfaces for COMMAND assert_equals: Element COMMAND should have HTMLUnknownElement as its primary interface. expected &quot;[object HTMLUnknownElement]&quot; but got &quot;[object HTMLElement]&quot;
+PASS Interfaces for data 
+PASS Interfaces for DATA 
+FAIL Interfaces for datalist assert_equals: Element datalist should have HTMLDataListElement as its primary interface. expected &quot;[object HTMLDataListElement]&quot; but got &quot;[object HTMLUnknownElement]&quot;
+FAIL Interfaces for DATALIST assert_equals: Element DATALIST should have HTMLDataListElement as its primary interface. expected &quot;[object HTMLDataListElement]&quot; but got &quot;[object HTMLUnknownElement]&quot;
+PASS Interfaces for dd 
+PASS Interfaces for DD 
+PASS Interfaces for del 
+PASS Interfaces for DEL 
+PASS Interfaces for details 
+PASS Interfaces for DETAILS 
+PASS Interfaces for dfn 
+PASS Interfaces for DFN 
+FAIL Interfaces for dialog assert_equals: Element dialog should have HTMLDialogElement as its primary interface. expected &quot;[object HTMLDialogElement]&quot; but got &quot;[object HTMLUnknownElement]&quot;
+FAIL Interfaces for DIALOG assert_equals: Element DIALOG should have HTMLDialogElement as its primary interface. expected &quot;[object HTMLDialogElement]&quot; but got &quot;[object HTMLUnknownElement]&quot;
+PASS Interfaces for dir 
+PASS Interfaces for DIR 
+PASS Interfaces for directory 
+PASS Interfaces for DIRECTORY 
+PASS Interfaces for div 
+PASS Interfaces for DIV 
+PASS Interfaces for dl 
+PASS Interfaces for DL 
+PASS Interfaces for dt 
+PASS Interfaces for DT 
+PASS Interfaces for em 
+PASS Interfaces for EM 
+PASS Interfaces for embed 
+PASS Interfaces for EMBED 
+PASS Interfaces for fieldset 
+PASS Interfaces for FIELDSET 
+PASS Interfaces for figcaption 
+PASS Interfaces for FIGCAPTION 
+PASS Interfaces for figure 
+PASS Interfaces for FIGURE 
+PASS Interfaces for font 
+PASS Interfaces for FONT 
+PASS Interfaces for foo-BAR 
+FAIL Interfaces for foo-bar assert_equals: Element foo-bar should have HTMLElement as its primary interface. expected &quot;[object HTMLElement]&quot; but got &quot;[object HTMLUnknownElement]&quot;
+FAIL Interfaces for FOO-BAR assert_equals: Element FOO-BAR should have HTMLElement as its primary interface. expected &quot;[object HTMLElement]&quot; but got &quot;[object HTMLUnknownElement]&quot;
+PASS Interfaces for foo 
+PASS Interfaces for FOO 
+PASS Interfaces for footer 
+PASS Interfaces for FOOTER 
+PASS Interfaces for form 
+PASS Interfaces for FORM 
+PASS Interfaces for frame 
+PASS Interfaces for FRAME 
+PASS Interfaces for frameset 
+PASS Interfaces for FRAMESET 
+PASS Interfaces for h1 
+PASS Interfaces for H1 
+PASS Interfaces for h2 
+PASS Interfaces for H2 
+PASS Interfaces for h3 
+PASS Interfaces for H3 
+PASS Interfaces for h4 
+PASS Interfaces for H4 
+PASS Interfaces for h5 
+PASS Interfaces for H5 
+PASS Interfaces for h6 
+PASS Interfaces for H6 
+PASS Interfaces for head 
+PASS Interfaces for HEAD 
+PASS Interfaces for header 
+PASS Interfaces for HEADER 
+PASS Interfaces for hgroup 
+PASS Interfaces for HGROUP 
+PASS Interfaces for hr 
+PASS Interfaces for HR 
+PASS Interfaces for html 
+PASS Interfaces for HTML 
+PASS Interfaces for i 
+PASS Interfaces for I 
+PASS Interfaces for iframe 
+PASS Interfaces for IFRAME 
+PASS Interfaces for image 
+PASS Interfaces for IMAGE 
+PASS Interfaces for img 
+PASS Interfaces for IMG 
+PASS Interfaces for input 
+PASS Interfaces for INPUT 
+PASS Interfaces for ins 
+PASS Interfaces for INS 
+PASS Interfaces for isindex 
+PASS Interfaces for ISINDEX 
+PASS Interfaces for kbd 
+PASS Interfaces for KBD 
+PASS Interfaces for keygen 
+PASS Interfaces for KEYGEN 
+PASS Interfaces for label 
+PASS Interfaces for LABEL 
+PASS Interfaces for legend 
+PASS Interfaces for LEGEND 
+PASS Interfaces for li 
+PASS Interfaces for LI 
+PASS Interfaces for link 
+PASS Interfaces for LINK 
+PASS Interfaces for listing 
+PASS Interfaces for LISTING 
+PASS Interfaces for main 
+PASS Interfaces for MAIN 
+PASS Interfaces for map 
+PASS Interfaces for MAP 
+PASS Interfaces for mark 
+PASS Interfaces for MARK 
+PASS Interfaces for marquee 
+PASS Interfaces for MARQUEE 
+PASS Interfaces for menu 
+PASS Interfaces for MENU 
+FAIL Interfaces for menuitem assert_equals: Element menuitem should have HTMLMenuItemElement as its primary interface. expected &quot;[object HTMLMenuItemElement]&quot; but got &quot;[object HTMLUnknownElement]&quot;
+FAIL Interfaces for MENUITEM assert_equals: Element MENUITEM should have HTMLMenuItemElement as its primary interface. expected &quot;[object HTMLMenuItemElement]&quot; but got &quot;[object HTMLUnknownElement]&quot;
+PASS Interfaces for meta 
+PASS Interfaces for META 
+PASS Interfaces for meter 
+PASS Interfaces for METER 
+PASS Interfaces for mod 
+PASS Interfaces for MOD 
+PASS Interfaces for multicol 
+PASS Interfaces for MULTICOL 
+PASS Interfaces for nav 
+PASS Interfaces for NAV 
+PASS Interfaces for nextid 
+PASS Interfaces for NEXTID 
+PASS Interfaces for nobr 
+PASS Interfaces for NOBR 
+PASS Interfaces for noembed 
+PASS Interfaces for NOEMBED 
+PASS Interfaces for noframes 
+PASS Interfaces for NOFRAMES 
+PASS Interfaces for noscript 
+PASS Interfaces for NOSCRIPT 
+PASS Interfaces for object 
+PASS Interfaces for OBJECT 
+PASS Interfaces for ol 
+PASS Interfaces for OL 
+PASS Interfaces for optgroup 
+PASS Interfaces for OPTGROUP 
+PASS Interfaces for option 
+PASS Interfaces for OPTION 
+PASS Interfaces for output 
+PASS Interfaces for OUTPUT 
+PASS Interfaces for p 
+PASS Interfaces for P 
+PASS Interfaces for param 
+PASS Interfaces for PARAM 
+PASS Interfaces for picture 
+PASS Interfaces for PICTURE 
+PASS Interfaces for plaintext 
+PASS Interfaces for PLAINTEXT 
+PASS Interfaces for pre 
+PASS Interfaces for PRE 
+PASS Interfaces for progress 
+PASS Interfaces for PROGRESS 
+PASS Interfaces for q 
+PASS Interfaces for Q 
+PASS Interfaces for quasit 
+PASS Interfaces for QUASIT 
+PASS Interfaces for rb 
+PASS Interfaces for RB 
+PASS Interfaces for rp 
+PASS Interfaces for RP 
+PASS Interfaces for rt 
+PASS Interfaces for RT 
+PASS Interfaces for rtc 
+PASS Interfaces for RTC 
+PASS Interfaces for ruby 
+PASS Interfaces for RUBY 
+PASS Interfaces for s 
+PASS Interfaces for S 
+PASS Interfaces for samp 
+PASS Interfaces for SAMP 
+PASS Interfaces for script 
+PASS Interfaces for SCRIPT 
+PASS Interfaces for section 
+PASS Interfaces for SECTION 
+PASS Interfaces for select 
+PASS Interfaces for SELECT 
+PASS Interfaces for slot 
+PASS Interfaces for SLOT 
+PASS Interfaces for small 
+PASS Interfaces for SMALL 
+PASS Interfaces for source 
+PASS Interfaces for SOURCE 
+PASS Interfaces for spacer 
+PASS Interfaces for SPACER 
+PASS Interfaces for span 
+PASS Interfaces for SPAN 
+PASS Interfaces for strike 
+PASS Interfaces for STRIKE 
+PASS Interfaces for strong 
+PASS Interfaces for STRONG 
+PASS Interfaces for style 
+PASS Interfaces for STYLE 
+PASS Interfaces for sub 
+PASS Interfaces for SUB 
+PASS Interfaces for summary 
+PASS Interfaces for SUMMARY 
+PASS Interfaces for sup 
+PASS Interfaces for SUP 
+PASS Interfaces for table 
+PASS Interfaces for TABLE 
+PASS Interfaces for tbody 
+PASS Interfaces for TBODY 
+PASS Interfaces for td 
+PASS Interfaces for TD 
+PASS Interfaces for textarea 
+PASS Interfaces for TEXTAREA 
+PASS Interfaces for tfoot 
+PASS Interfaces for TFOOT 
+PASS Interfaces for th 
+PASS Interfaces for TH 
+PASS Interfaces for thead 
+PASS Interfaces for THEAD 
+PASS Interfaces for time 
+PASS Interfaces for TIME 
+PASS Interfaces for title 
+PASS Interfaces for TITLE 
+PASS Interfaces for tr 
+PASS Interfaces for TR 
+PASS Interfaces for track 
+PASS Interfaces for TRACK 
+PASS Interfaces for tt 
+PASS Interfaces for TT 
+PASS Interfaces for u 
+PASS Interfaces for U 
+PASS Interfaces for ul 
+PASS Interfaces for UL 
+PASS Interfaces for var 
+PASS Interfaces for VAR 
+PASS Interfaces for video 
+PASS Interfaces for VIDEO 
+PASS Interfaces for wbr 
+PASS Interfaces for WBR 
+PASS Interfaces for xmp 
+PASS Interfaces for XMP 
+FAIL Interfaces for Ã¥-bar The string contains invalid characters.
+
</ins></span></pre></div>
<a id="branchessafari602branchLayoutTestsplatformmacimportedw3cwebplatformtestshtmlsemanticsselectorspseudoclassesreadwritereadonlyexpectedtxt"></a>
<div class="addfile"><h4>Added: branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/selectors/pseudo-classes/readwrite-readonly-expected.txt (0 => 204212)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/selectors/pseudo-classes/readwrite-readonly-expected.txt                                (rev 0)
+++ branches/safari-602-branch/LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/selectors/pseudo-classes/readwrite-readonly-expected.txt        2016-08-06 01:19:14 UTC (rev 204212)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+         
+    


+paragraph1.
+
+paragraph2.
+
+
+FAIL The :read-write pseudo-class must not match input elements to which the readonly attribute does not apply assert_array_equals: lengths differ, expected 0 got 1
+FAIL The :read-only pseudo-class must match input elements to which the readonly attribute does not apply assert_array_equals: lengths differ, expected 10 got 9
+PASS The :read-write pseudo-class must match input elements to which the readonly attribute applies, and that are mutable 
+FAIL The :read-only pseudo-class must not match input elements to which the readonly attribute applies, and that are mutable assert_array_equals: lengths differ, expected 1 got 4
+PASS The :read-write pseudo-class must not match input elements after the readonly attribute has been added 
+FAIL The :read-only pseudo-class must match input elements after the readonly attribute has been added assert_array_equals: lengths differ, expected 2 got 5
+PASS The :read-write pseudo-class must not match input elements after the readonly attribute has been removed 
+FAIL The :read-only pseudo-class must match input elements after the readonly attribute has been removed assert_array_equals: lengths differ, expected 1 got 4
+PASS The :read-write pseudo-class must match textarea elements that do not have a readonly attribute, and that are not disabled 
+PASS The :read-only pseudo-class must match textarea elements that have a readonly attribute, or that are disabled 
+PASS The :read-write pseudo-class must match textarea elements after the readonly attribute has been added 
+PASS The :read-only pseudo-class must match textarea elements after the readonly attribute has been added 
+PASS The :read-write pseudo-class must not match textarea elements that are disabled 
+PASS The :read-only pseudo-class must match textarea elements that are disabled 
+PASS The :read-write pseudo-class must match elements that are editable 
+PASS The :read-only pseudo-class must not match elements that are editable 
+PASS The :read-write pseudo-class must match elements that are editing hosts 
+PASS The :read-only pseudo-class must not match elements that are editing hosts 
+
</ins></span></pre></div>
<a id="branchessafari602branchLayoutTestsplatformmacjsdomconstructorlengthexpectedtxt"></a>
<div class="modfile"><h4>Modified: branches/safari-602-branch/LayoutTests/platform/mac/js/dom/constructor-length-expected.txt (204211 => 204212)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-602-branch/LayoutTests/platform/mac/js/dom/constructor-length-expected.txt        2016-08-06 01:16:43 UTC (rev 204211)
+++ branches/safari-602-branch/LayoutTests/platform/mac/js/dom/constructor-length-expected.txt        2016-08-06 01:19:14 UTC (rev 204212)
</span><span class="lines">@@ -27,7 +27,7 @@
</span><span class="cx"> PASS Int8Array.length is 0
</span><span class="cx"> FAIL Intent.length should be 3. Threw exception ReferenceError: Can't find variable: Intent
</span><span class="cx"> PASS MediaController.length is 0
</span><del>-PASS MediaStream.length is 0
</del><ins>+FAIL MediaStream.length should be 0. Threw exception ReferenceError: Can't find variable: MediaStream
</ins><span class="cx"> PASS MessageChannel.length is 0
</span><span class="cx"> PASS MessageEvent.length is 1
</span><span class="cx"> PASS OverflowEvent.length is 1
</span></span></pre></div>
<a id="branchessafari602branchLayoutTestsplatformmacjsdomdomstaticpropertyforiniterationexpectedtxt"></a>
<div class="addfile"><h4>Added: branches/safari-602-branch/LayoutTests/platform/mac/js/dom/dom-static-property-for-in-iteration-expected.txt (0 => 204212)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-602-branch/LayoutTests/platform/mac/js/dom/dom-static-property-for-in-iteration-expected.txt                                (rev 0)
+++ branches/safari-602-branch/LayoutTests/platform/mac/js/dom/dom-static-property-for-in-iteration-expected.txt        2016-08-06 01:19:14 UTC (rev 204212)
</span><span class="lines">@@ -0,0 +1,172 @@
</span><ins>+Checks that get_by_pname doesn't get confused about which properties go where when it comes to stacic properties.
+
+On success, you will see a series of &quot;PASS&quot; messages, followed by &quot;TEST COMPLETE&quot;.
+
+
+PASS a[&quot;foo&quot;] is 1
+PASS a[&quot;bar&quot;] is 2
+PASS a[&quot;wibble&quot;] is 3
+PASS a[&quot;hick&quot;] is 4
+PASS a[&quot;hock&quot;] is 5
+PASS a[&quot;snood&quot;] is 6
+PASS a[&quot;charset&quot;] is 
+PASS a[&quot;coords&quot;] is 
+PASS a[&quot;download&quot;] is 
+PASS a[&quot;hreflang&quot;] is 
+PASS a[&quot;name&quot;] is 
+PASS a[&quot;ping&quot;] is 
+PASS a[&quot;rel&quot;] is 
+PASS a[&quot;rev&quot;] is 
+PASS a[&quot;shape&quot;] is 
+PASS a[&quot;target&quot;] is 
+PASS a[&quot;type&quot;] is 
+PASS a[&quot;text&quot;] is nerget
+PASS a[&quot;relList&quot;] is 
+PASS a[&quot;origin&quot;] is file://
+PASS a[&quot;protocol&quot;] is file:
+PASS a[&quot;username&quot;] is 
+PASS a[&quot;password&quot;] is 
+PASS a[&quot;host&quot;] is 
+PASS a[&quot;hostname&quot;] is 
+PASS a[&quot;port&quot;] is 
+PASS a[&quot;search&quot;] is 
+PASS a[&quot;hash&quot;] is 
+PASS a[&quot;title&quot;] is 
+PASS a[&quot;lang&quot;] is 
+PASS a[&quot;translate&quot;] is true
+PASS a[&quot;dir&quot;] is 
+PASS a[&quot;tabIndex&quot;] is 0
+PASS a[&quot;draggable&quot;] is true
+PASS a[&quot;webkitdropzone&quot;] is 
+PASS a[&quot;hidden&quot;] is false
+PASS a[&quot;accessKey&quot;] is 
+PASS a[&quot;innerText&quot;] is nerget
+PASS a[&quot;outerText&quot;] is nerget
+PASS a[&quot;contentEditable&quot;] is inherit
+PASS a[&quot;isContentEditable&quot;] is false
+PASS a[&quot;spellcheck&quot;] is true
+PASS a[&quot;onabort&quot;] is null
+PASS a[&quot;onblur&quot;] is null
+PASS a[&quot;oncanplay&quot;] is null
+PASS a[&quot;oncanplaythrough&quot;] is null
+PASS a[&quot;onchange&quot;] is null
+PASS a[&quot;onclick&quot;] is null
+PASS a[&quot;oncontextmenu&quot;] is null
+PASS a[&quot;ondblclick&quot;] is null
+PASS a[&quot;ondrag&quot;] is null
+PASS a[&quot;ondragend&quot;] is null
+PASS a[&quot;ondragenter&quot;] is null
+PASS a[&quot;ondragleave&quot;] is null
+PASS a[&quot;ondragover&quot;] is null
+PASS a[&quot;ondragstart&quot;] is null
+PASS a[&quot;ondrop&quot;] is null
+PASS a[&quot;ondurationchange&quot;] is null
+PASS a[&quot;onemptied&quot;] is null
+PASS a[&quot;onended&quot;] is null
+PASS a[&quot;onerror&quot;] is null
+PASS a[&quot;onfocus&quot;] is null
+PASS a[&quot;oninput&quot;] is null
+PASS a[&quot;oninvalid&quot;] is null
+PASS a[&quot;onkeydown&quot;] is null
+PASS a[&quot;onkeypress&quot;] is null
+PASS a[&quot;onkeyup&quot;] is null
+PASS a[&quot;onload&quot;] is null
+PASS a[&quot;onloadeddata&quot;] is null
+PASS a[&quot;onloadedmetadata&quot;] is null
+PASS a[&quot;onloadstart&quot;] is null
+PASS a[&quot;onmousedown&quot;] is null
+PASS a[&quot;onmouseenter&quot;] is null
+PASS a[&quot;onmouseleave&quot;] is null
+PASS a[&quot;onmousemove&quot;] is null
+PASS a[&quot;onmouseout&quot;] is null
+PASS a[&quot;onmouseover&quot;] is null
+PASS a[&quot;onmouseup&quot;] is null
+PASS a[&quot;onmousewheel&quot;] is null
+PASS a[&quot;onpause&quot;] is null
+PASS a[&quot;onplay&quot;] is null
+PASS a[&quot;onplaying&quot;] is null
+PASS a[&quot;onprogress&quot;] is null
+PASS a[&quot;onratechange&quot;] is null
+PASS a[&quot;onreset&quot;] is null
+PASS a[&quot;onresize&quot;] is null
+PASS a[&quot;onscroll&quot;] is null
+PASS a[&quot;onseeked&quot;] is null
+PASS a[&quot;onseeking&quot;] is null
+PASS a[&quot;onselect&quot;] is null
+PASS a[&quot;onstalled&quot;] is null
+PASS a[&quot;onsubmit&quot;] is null
+PASS a[&quot;onsuspend&quot;] is null
+PASS a[&quot;ontimeupdate&quot;] is null
+PASS a[&quot;onvolumechange&quot;] is null
+PASS a[&quot;onwaiting&quot;] is null
+PASS a[&quot;tagName&quot;] is A
+PASS a[&quot;attributes&quot;] is [object NamedNodeMap]
+PASS a[&quot;style&quot;] is [object CSSStyleDeclaration]
+PASS a[&quot;id&quot;] is foo
+PASS a[&quot;offsetLeft&quot;] is 8
+PASS a[&quot;offsetTop&quot;] is 1599
+PASS a[&quot;offsetWidth&quot;] is 40
+PASS a[&quot;offsetHeight&quot;] is 18
+PASS a[&quot;clientLeft&quot;] is 0
+PASS a[&quot;clientTop&quot;] is 0
+PASS a[&quot;clientWidth&quot;] is 0
+PASS a[&quot;clientHeight&quot;] is 0
+PASS a[&quot;scrollLeft&quot;] is 0
+PASS a[&quot;scrollTop&quot;] is 0
+PASS a[&quot;scrollWidth&quot;] is 0
+PASS a[&quot;scrollHeight&quot;] is 0
+PASS a[&quot;offsetParent&quot;] is [object HTMLBodyElement]
+PASS a[&quot;innerHTML&quot;] is nerget
+PASS a[&quot;outerHTML&quot;] is &lt;a id=&quot;foo&quot; href=&quot;bar&quot;&gt;nerget&lt;/a&gt;
+PASS a[&quot;className&quot;] is 
+PASS a[&quot;classList&quot;] is 
+PASS a[&quot;dataset&quot;] is [object DOMStringMap]
+PASS a[&quot;webkitRegionOverset&quot;] is undefined
+PASS a[&quot;shadowRoot&quot;] is null
+PASS a[&quot;slot&quot;] is 
+PASS a[&quot;previousElementSibling&quot;] is [object HTMLDivElement]
+PASS a[&quot;nextElementSibling&quot;] is [object HTMLScriptElement]
+PASS a[&quot;children&quot;] is [object HTMLCollection]
+PASS a[&quot;firstElementChild&quot;] is null
+PASS a[&quot;lastElementChild&quot;] is null
+PASS a[&quot;childElementCount&quot;] is 0
+PASS a[&quot;assignedSlot&quot;] is null
+PASS a[&quot;ALLOW_KEYBOARD_INPUT&quot;] is 1
+PASS a[&quot;nodeName&quot;] is A
+PASS a[&quot;nodeValue&quot;] is null
+PASS a[&quot;nodeType&quot;] is 1
+PASS a[&quot;parentNode&quot;] is [object HTMLBodyElement]
+PASS a[&quot;childNodes&quot;] is [object NodeList]
+PASS a[&quot;firstChild&quot;] is [object Text]
+PASS a[&quot;lastChild&quot;] is [object Text]
+PASS a[&quot;previousSibling&quot;] is [object Text]
+PASS a[&quot;nextSibling&quot;] is [object Text]
+PASS a[&quot;ownerDocument&quot;] is [object HTMLDocument]
+PASS a[&quot;namespaceURI&quot;] is http://www.w3.org/1999/xhtml
+PASS a[&quot;prefix&quot;] is null
+PASS a[&quot;localName&quot;] is a
+PASS a[&quot;textContent&quot;] is nerget
+PASS a[&quot;isConnected&quot;] is true
+PASS a[&quot;parentElement&quot;] is [object HTMLBodyElement]
+PASS a[&quot;ELEMENT_NODE&quot;] is 1
+PASS a[&quot;ATTRIBUTE_NODE&quot;] is 2
+PASS a[&quot;TEXT_NODE&quot;] is 3
+PASS a[&quot;CDATA_SECTION_NODE&quot;] is 4
+PASS a[&quot;ENTITY_REFERENCE_NODE&quot;] is 5
+PASS a[&quot;ENTITY_NODE&quot;] is 6
+PASS a[&quot;PROCESSING_INSTRUCTION_NODE&quot;] is 7
+PASS a[&quot;COMMENT_NODE&quot;] is 8
+PASS a[&quot;DOCUMENT_NODE&quot;] is 9
+PASS a[&quot;DOCUMENT_TYPE_NODE&quot;] is 10
+PASS a[&quot;DOCUMENT_FRAGMENT_NODE&quot;] is 11
+PASS a[&quot;NOTATION_NODE&quot;] is 12
+PASS a[&quot;DOCUMENT_POSITION_DISCONNECTED&quot;] is 1
+PASS a[&quot;DOCUMENT_POSITION_PRECEDING&quot;] is 2
+PASS a[&quot;DOCUMENT_POSITION_FOLLOWING&quot;] is 4
+PASS a[&quot;DOCUMENT_POSITION_CONTAINS&quot;] is 8
+PASS a[&quot;DOCUMENT_POSITION_CONTAINED_BY&quot;] is 16
+PASS a[&quot;DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC&quot;] is 32
+PASS successfullyParsed is true
+
+TEST COMPLETE
+nerget
</ins></span></pre></div>
<a id="branchessafari602branchLayoutTestsplatformmacjsdomglobalconstructorsattributesdedicatedworkerexpectedtxt"></a>
<div class="addfile"><h4>Added: branches/safari-602-branch/LayoutTests/platform/mac/js/dom/global-constructors-attributes-dedicated-worker-expected.txt (0 => 204212)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-602-branch/LayoutTests/platform/mac/js/dom/global-constructors-attributes-dedicated-worker-expected.txt                                (rev 0)
+++ branches/safari-602-branch/LayoutTests/platform/mac/js/dom/global-constructors-attributes-dedicated-worker-expected.txt        2016-08-06 01:19:14 UTC (rev 204212)
</span><span class="lines">@@ -0,0 +1,295 @@
</span><ins>+Test to ensure that global constructors have the right attributes in the dedicated worker context
+
+On success, you will see a series of &quot;PASS&quot; messages, followed by &quot;TEST COMPLETE&quot;.
+
+
+Starting worker: script-tests/global-constructors-attributes.js
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Array').value is Array
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Array').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Array').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Array').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Array').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'ArrayBuffer').value is ArrayBuffer
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'ArrayBuffer').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'ArrayBuffer').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'ArrayBuffer').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'ArrayBuffer').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Blob').value is Blob
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Blob').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Blob').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Blob').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Blob').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Boolean').value is Boolean
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Boolean').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Boolean').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Boolean').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Boolean').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'DOMException').value is DOMException
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'DOMException').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'DOMException').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'DOMException').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'DOMException').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'DataView').value is DataView
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'DataView').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'DataView').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'DataView').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'DataView').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Date').value is Date
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Date').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Date').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Date').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Date').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'DedicatedWorkerGlobalScope').value is DedicatedWorkerGlobalScope
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'DedicatedWorkerGlobalScope').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'DedicatedWorkerGlobalScope').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'DedicatedWorkerGlobalScope').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'DedicatedWorkerGlobalScope').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Error').value is Error
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Error').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Error').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Error').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Error').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'ErrorEvent').value is ErrorEvent
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'ErrorEvent').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'ErrorEvent').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'ErrorEvent').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'ErrorEvent').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'EvalError').value is EvalError
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'EvalError').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'EvalError').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'EvalError').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'EvalError').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Event').value is Event
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Event').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Event').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Event').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Event').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'EventSource').value is EventSource
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'EventSource').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'EventSource').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'EventSource').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'EventSource').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'EventTarget').value is EventTarget
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'EventTarget').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'EventTarget').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'EventTarget').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'EventTarget').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'FileReader').value is FileReader
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'FileReader').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'FileReader').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'FileReader').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'FileReader').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'FileReaderSync').value is FileReaderSync
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'FileReaderSync').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'FileReaderSync').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'FileReaderSync').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'FileReaderSync').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Float32Array').value is Float32Array
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Float32Array').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Float32Array').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Float32Array').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Float32Array').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Float64Array').value is Float64Array
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Float64Array').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Float64Array').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Float64Array').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Float64Array').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Function').value is Function
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Function').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Function').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Function').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Function').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Headers').value is Headers
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Headers').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Headers').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Headers').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Headers').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'ImageData').value is ImageData
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'ImageData').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'ImageData').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'ImageData').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'ImageData').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Int16Array').value is Int16Array
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Int16Array').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Int16Array').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Int16Array').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Int16Array').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Int32Array').value is Int32Array
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Int32Array').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Int32Array').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Int32Array').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Int32Array').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Int8Array').value is Int8Array
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Int8Array').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Int8Array').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Int8Array').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Int8Array').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Map').value is Map
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Map').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Map').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Map').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Map').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'MessageChannel').value is MessageChannel
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'MessageChannel').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'MessageChannel').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'MessageChannel').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'MessageChannel').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'MessageEvent').value is MessageEvent
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'MessageEvent').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'MessageEvent').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'MessageEvent').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'MessageEvent').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'MessagePort').value is MessagePort
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'MessagePort').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'MessagePort').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'MessagePort').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'MessagePort').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Number').value is Number
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Number').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Number').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Number').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Number').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Object').value is Object
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Object').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Object').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Object').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Object').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'ProgressEvent').value is ProgressEvent
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'ProgressEvent').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'ProgressEvent').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'ProgressEvent').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'ProgressEvent').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Promise').value is Promise
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Promise').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Promise').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Promise').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Promise').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'RangeError').value is RangeError
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'RangeError').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'RangeError').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'RangeError').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'RangeError').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'ReferenceError').value is ReferenceError
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'ReferenceError').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'ReferenceError').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'ReferenceError').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'ReferenceError').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'RegExp').value is RegExp
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'RegExp').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'RegExp').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'RegExp').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'RegExp').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Request').value is Request
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Request').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Request').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Request').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Request').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Response').value is Response
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Response').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Response').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Response').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Response').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Set').value is Set
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Set').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Set').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Set').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Set').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'String').value is String
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'String').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'String').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'String').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'String').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Symbol').value is Symbol
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Symbol').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Symbol').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Symbol').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Symbol').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'SyntaxError').value is SyntaxError
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'SyntaxError').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'SyntaxError').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'SyntaxError').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'SyntaxError').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'TypeError').value is TypeError
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'TypeError').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'TypeError').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'TypeError').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'TypeError').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'URIError').value is URIError
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'URIError').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'URIError').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'URIError').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'URIError').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'URL').value is URL
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'URL').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'URL').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'URL').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'URL').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Uint16Array').value is Uint16Array
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Uint16Array').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Uint16Array').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Uint16Array').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Uint16Array').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Uint32Array').value is Uint32Array
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Uint32Array').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Uint32Array').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Uint32Array').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Uint32Array').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Uint8Array').value is Uint8Array
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Uint8Array').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Uint8Array').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Uint8Array').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Uint8Array').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Uint8ClampedArray').value is Uint8ClampedArray
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Uint8ClampedArray').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Uint8ClampedArray').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Uint8ClampedArray').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'Uint8ClampedArray').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WeakMap').value is WeakMap
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WeakMap').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WeakMap').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WeakMap').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WeakMap').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WeakSet').value is WeakSet
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WeakSet').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WeakSet').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WeakSet').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WeakSet').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WebSocket').value is WebSocket
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WebSocket').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WebSocket').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WebSocket').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WebSocket').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WorkerGlobalScope').value is WorkerGlobalScope
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WorkerGlobalScope').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WorkerGlobalScope').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WorkerGlobalScope').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WorkerGlobalScope').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WorkerLocation').value is WorkerLocation
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WorkerLocation').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WorkerLocation').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WorkerLocation').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WorkerLocation').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WorkerNavigator').value is WorkerNavigator
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WorkerNavigator').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WorkerNavigator').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WorkerNavigator').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'WorkerNavigator').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').value is XMLHttpRequest
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').value is XMLHttpRequestEventTarget
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'webkitURL').value is webkitURL
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'webkitURL').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'webkitURL').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'webkitURL').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'webkitURL').configurable is true
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
</ins></span></pre></div>
<a id="branchessafari602branchLayoutTestsplatformmacjsdomglobalconstructorsattributesexpectedtxt"></a>
<div class="modfile"><h4>Modified: branches/safari-602-branch/LayoutTests/platform/mac/js/dom/global-constructors-attributes-expected.txt (204211 => 204212)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-602-branch/LayoutTests/platform/mac/js/dom/global-constructors-attributes-expected.txt        2016-08-06 01:16:43 UTC (rev 204211)
+++ branches/safari-602-branch/LayoutTests/platform/mac/js/dom/global-constructors-attributes-expected.txt        2016-08-06 01:19:14 UTC (rev 204212)
</span><span class="lines">@@ -113,11 +113,6 @@
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Boolean').hasOwnProperty('set') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Boolean').enumerable is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Boolean').configurable is true
</span><del>-PASS Object.getOwnPropertyDescriptor(global, 'ByteLengthQueuingStrategy').value is ByteLengthQueuingStrategy
-PASS Object.getOwnPropertyDescriptor(global, 'ByteLengthQueuingStrategy').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'ByteLengthQueuingStrategy').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'ByteLengthQueuingStrategy').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'ByteLengthQueuingStrategy').configurable is true
</del><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'CDATASection').value is CDATASection
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'CDATASection').hasOwnProperty('get') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'CDATASection').hasOwnProperty('set') is false
</span><span class="lines">@@ -263,11 +258,6 @@
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'ConvolverNode').hasOwnProperty('set') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'ConvolverNode').enumerable is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'ConvolverNode').configurable is true
</span><del>-PASS Object.getOwnPropertyDescriptor(global, 'CountQueuingStrategy').value is CountQueuingStrategy
-PASS Object.getOwnPropertyDescriptor(global, 'CountQueuingStrategy').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'CountQueuingStrategy').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'CountQueuingStrategy').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'CountQueuingStrategy').configurable is true
</del><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Counter').value is Counter
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Counter').hasOwnProperty('get') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Counter').hasOwnProperty('set') is false
</span><span class="lines">@@ -933,31 +923,6 @@
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'MediaSource').hasOwnProperty('set') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'MediaSource').enumerable is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'MediaSource').configurable is true
</span><del>-PASS Object.getOwnPropertyDescriptor(global, 'MediaStream').value is MediaStream
-PASS Object.getOwnPropertyDescriptor(global, 'MediaStream').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'MediaStream').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'MediaStream').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'MediaStream').configurable is true
-PASS Object.getOwnPropertyDescriptor(global, 'MediaStreamAudioDestinationNode').value is MediaStreamAudioDestinationNode
-PASS Object.getOwnPropertyDescriptor(global, 'MediaStreamAudioDestinationNode').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'MediaStreamAudioDestinationNode').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'MediaStreamAudioDestinationNode').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'MediaStreamAudioDestinationNode').configurable is true
-PASS Object.getOwnPropertyDescriptor(global, 'MediaStreamAudioSourceNode').value is MediaStreamAudioSourceNode
-PASS Object.getOwnPropertyDescriptor(global, 'MediaStreamAudioSourceNode').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'MediaStreamAudioSourceNode').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'MediaStreamAudioSourceNode').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'MediaStreamAudioSourceNode').configurable is true
-PASS Object.getOwnPropertyDescriptor(global, 'MediaStreamTrack').value is MediaStreamTrack
-PASS Object.getOwnPropertyDescriptor(global, 'MediaStreamTrack').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'MediaStreamTrack').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'MediaStreamTrack').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'MediaStreamTrack').configurable is true
-PASS Object.getOwnPropertyDescriptor(global, 'MediaStreamTrackEvent').value is MediaStreamTrackEvent
-PASS Object.getOwnPropertyDescriptor(global, 'MediaStreamTrackEvent').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'MediaStreamTrackEvent').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'MediaStreamTrackEvent').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'MediaStreamTrackEvent').configurable is true
</del><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'MessageChannel').value is MessageChannel
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'MessageChannel').hasOwnProperty('get') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'MessageChannel').hasOwnProperty('set') is false
</span><span class="lines">@@ -1148,11 +1113,6 @@
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'RangeError').hasOwnProperty('set') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'RangeError').enumerable is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'RangeError').configurable is true
</span><del>-PASS Object.getOwnPropertyDescriptor(global, 'ReadableStream').value is ReadableStream
-PASS Object.getOwnPropertyDescriptor(global, 'ReadableStream').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'ReadableStream').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'ReadableStream').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'ReadableStream').configurable is true
</del><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Rect').value is Rect
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Rect').hasOwnProperty('get') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Rect').hasOwnProperty('set') is false
</span><span class="lines">@@ -2048,11 +2008,6 @@
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'UIEvent').hasOwnProperty('set') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'UIEvent').enumerable is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'UIEvent').configurable is true
</span><del>-PASS Object.getOwnPropertyDescriptor(global, 'UIRequestEvent').value is UIRequestEvent
-PASS Object.getOwnPropertyDescriptor(global, 'UIRequestEvent').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'UIRequestEvent').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'UIRequestEvent').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'UIRequestEvent').configurable is true
</del><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'URIError').value is URIError
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'URIError').hasOwnProperty('get') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'URIError').hasOwnProperty('set') is false
</span><span class="lines">@@ -2133,11 +2088,6 @@
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'WeakSet').hasOwnProperty('set') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'WeakSet').enumerable is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'WeakSet').configurable is true
</span><del>-PASS Object.getOwnPropertyDescriptor(global, 'WebGL2RenderingContext').value is WebGL2RenderingContext
-PASS Object.getOwnPropertyDescriptor(global, 'WebGL2RenderingContext').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'WebGL2RenderingContext').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'WebGL2RenderingContext').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'WebGL2RenderingContext').configurable is true
</del><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'WebGLActiveInfo').value is WebGLActiveInfo
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'WebGLActiveInfo').hasOwnProperty('get') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'WebGLActiveInfo').hasOwnProperty('set') is false
</span><span class="lines">@@ -2213,11 +2163,6 @@
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'WebGLUniformLocation').hasOwnProperty('set') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'WebGLUniformLocation').enumerable is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'WebGLUniformLocation').configurable is true
</span><del>-PASS Object.getOwnPropertyDescriptor(global, 'WebGLVertexArrayObject').value is WebGLVertexArrayObject
-PASS Object.getOwnPropertyDescriptor(global, 'WebGLVertexArrayObject').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'WebGLVertexArrayObject').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'WebGLVertexArrayObject').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'WebGLVertexArrayObject').configurable is true
</del><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'WebKitAnimationEvent').value is WebKitAnimationEvent
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'WebKitAnimationEvent').hasOwnProperty('get') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'WebKitAnimationEvent').hasOwnProperty('set') is false
</span><span class="lines">@@ -2313,11 +2258,6 @@
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Worker').hasOwnProperty('set') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Worker').enumerable is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'Worker').configurable is true
</span><del>-PASS Object.getOwnPropertyDescriptor(global, 'WritableStream').value is WritableStream
-PASS Object.getOwnPropertyDescriptor(global, 'WritableStream').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'WritableStream').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'WritableStream').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'WritableStream').configurable is true
</del><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'XMLDocument').value is XMLDocument
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'XMLDocument').hasOwnProperty('get') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'XMLDocument').hasOwnProperty('set') is false
</span></span></pre></div>
<a id="branchessafari602branchLayoutTestsplatformmacplatformmacfastloaderfileurlmimetypes3expectedtxt"></a>
<div class="addfile"><h4>Added: branches/safari-602-branch/LayoutTests/platform/mac/platform/mac/fast/loader/file-url-mimetypes-3-expected.txt (0 => 204212)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-602-branch/LayoutTests/platform/mac/platform/mac/fast/loader/file-url-mimetypes-3-expected.txt                                (rev 0)
+++ branches/safari-602-branch/LayoutTests/platform/mac/platform/mac/fast/loader/file-url-mimetypes-3-expected.txt        2016-08-06 01:19:14 UTC (rev 204212)
</span><span class="lines">@@ -0,0 +1,105 @@
</span><ins>+example-s.s has MIME type text/plain
+example-scpt.scpt has MIME type application/octet-stream
+example-sd2.sd2 has MIME type application/octet-stream
+example-sf2.sf2 has MIME type application/octet-stream
+example-sgi.sgi has MIME type image/sgi
+example-sgm.sgm has MIME type text/sgml
+example-sgml.sgml has MIME type text/sgml
+example-sh.sh has MIME type application/x-sh
+example-shar.shar has MIME type application/x-shar
+example-shtm.shtm has MIME type text/html
+example-shtml.shtml has MIME type text/html
+example-silo.silo has MIME type model/mesh
+example-sit.sit has MIME type application/x-stuffit
+example-sitx.sitx has MIME type application/x-stuffitx
+example-skd.skd has MIME type application/x-koan
+example-skm.skm has MIME type application/x-koan
+example-skp.skp has MIME type application/x-koan
+example-skt.skt has MIME type application/x-koan
+example-smf.smf has MIME type audio/midi
+example-smi.smi has MIME type application/smil
+example-smil.smil has MIME type application/smil
+example-snd.snd has MIME type audio/basic
+example-so.so has MIME type application/octet-stream
+example-spl.spl has MIME type application/x-futuresplash
+example-src.src has MIME type application/x-wais-source
+example-srf.srf has MIME type application/octet-stream
+example-suit.suit has MIME type application/octet-stream
+example-sv4cpio.sv4cpio has MIME type application/x-sv4cpio
+example-sv4crc.sv4crc has MIME type application/x-sv4crc
+example-svg.svg has MIME type image/svg+xml
+example-svgz.svgz has MIME type image/svg+xml
+example-swf.swf has MIME type application/x-shockwave-flash
+example-t.t has MIME type application/x-troff
+example-tar.tar has MIME type application/x-tar
+example-targa.targa has MIME type image/x-targa
+example-tbz.tbz has MIME type application/x-bzip2
+example-tbz2.tbz2 has MIME type application/x-bzip2
+example-tcl.tcl has MIME type application/x-tcl
+example-tex.tex has MIME type application/x-tex
+example-texi.texi has MIME type application/x-texinfo
+example-texinfo.texinfo has MIME type application/x-texinfo
+example-text.text has MIME type text/plain
+example-tga.tga has MIME type image/targa
+example-tgz.tgz has MIME type application/x-gzip
+example-tif.tif has MIME type image/tiff
+example-tiff.tiff has MIME type image/tiff
+example-torrent.torrent has MIME type application/x-bittorrent
+example-tr.tr has MIME type application/x-troff
+example-tsv.tsv has MIME type text/tab-separated-values
+example-ttc.ttc has MIME type application/octet-stream
+example-ttf.ttf has MIME type application/octet-stream
+example-txt.txt has MIME type text/plain
+example-ul.ul has MIME type application/octet-stream
+example-ulaw.ulaw has MIME type application/octet-stream
+example-ulw.ulw has MIME type application/octet-stream
+example-ustar.ustar has MIME type application/x-ustar
+example-vcard.vcard has MIME type text/directory
+example-vcd.vcd has MIME type application/x-cdlink
+example-vcf.vcf has MIME type text/directory
+example-vfw.vfw has MIME type video/avi
+example-vrml.vrml has MIME type model/vrml
+example-war.war has MIME type application/java-archive
+example-wav.wav has MIME type audio/wav
+example-wave.wave has MIME type audio/wav
+example-wax.wax has MIME type video/x-ms-wax
+example-wbmp.wbmp has MIME type image/vnd.wap.wbmp
+example-wbxml.wbxml has MIME type application/vnd.wap.wbxml
+example-webarchive.webarchive has MIME type application/x-webarchive
+example-wm.wm has MIME type video/x-ms-wm
+example-wma.wma has MIME type video/x-ms-wma
+example-wmd.wmd has MIME type application/x-ms-wmd
+example-wml.wml has MIME type text/vnd.wap.wml
+example-wmlc.wmlc has MIME type application/vnd.wap.wmlc
+example-wmls.wmls has MIME type text/vnd.wap.wmlscript
+example-wmlsc.wmlsc has MIME type application/vnd.wap.wmlscriptc
+example-wmp.wmp has MIME type video/x-ms-wmp
+example-wmv.wmv has MIME type video/x-ms-wmv
+example-wmx.wmx has MIME type video/x-ms-wmx
+example-wrl.wrl has MIME type model/vrml
+example-wvx.wvx has MIME type video/x-ms-wvx
+example-xbm.xbm has MIME type image/x-xbitmap
+example-xdp.xdp has MIME type application/vnd.adobe.xdp+xml
+example-xfd.xfd has MIME type application/vnd.adobe.xfd+xml
+example-xfdf.xfdf has MIME type application/vnd.adobe.xfdf
+example-xht.xht has MIME type application/xhtml+xml
+example-xhtm.xhtm has MIME type application/xhtml+xml
+example-xhtml.xhtml has MIME type application/xhtml+xml
+example-xlsb.xlsb has MIME type application/vnd.ms-excel.sheet.binary.macroenabled.12
+example-xlsm.xlsm has MIME type application/vnd.ms-excel.sheet.macroenabled.12
+example-xlsx.xlsx has MIME type application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
+example-xltm.xltm has MIME type application/vnd.ms-excel.template.macroenabled.12
+example-xltx.xltx has MIME type application/vnd.openxmlformats-officedocument.spreadsheetml.template
+example-xml.xml has MIME type application/xml
+example-xpm.xpm has MIME type image/x-xpixmap
+example-xsl.xsl has MIME type xslt+xml
+example-xwd.xwd has MIME type image/x-xwindowdump
+example-xyz.xyz has MIME type chemical/x-xyz
+example-y.y has MIME type text/plain
+example-ym.ym has MIME type text/plain
+example-ymm.ymm has MIME type text/plain
+example-ypp.ypp has MIME type text/plain
+example-yxx.yxx has MIME type text/plain
+example-zip.zip has MIME type application/zip
+Using an image element to load resources, this test makes sure that every MIME type the loader should know about based solely on file extension in file:// urls is correct.
+
</ins></span></pre></div>
<a id="branchessafari602branchLayoutTestsplatformmacsvgcssgetComputedStylebasicexpectedtxt"></a>
<div class="addfile"><h4>Added: branches/safari-602-branch/LayoutTests/platform/mac/svg/css/getComputedStyle-basic-expected.txt (0 => 204212)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-602-branch/LayoutTests/platform/mac/svg/css/getComputedStyle-basic-expected.txt                                (rev 0)
+++ branches/safari-602-branch/LayoutTests/platform/mac/svg/css/getComputedStyle-basic-expected.txt        2016-08-06 01:19:14 UTC (rev 204212)
</span><span class="lines">@@ -0,0 +1,1033 @@
</span><ins>+rect: style.getPropertyValue(background-attachment) : scroll
+rect: style.getPropertyCSSValue(background-attachment) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(background-clip) : border-box
+rect: style.getPropertyCSSValue(background-clip) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(background-color) : rgba(0, 0, 0, 0)
+rect: style.getPropertyCSSValue(background-color) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(background-image) : none
+rect: style.getPropertyCSSValue(background-image) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(background-origin) : padding-box
+rect: style.getPropertyCSSValue(background-origin) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(background-position) : 0% 0%
+rect: style.getPropertyCSSValue(background-position) : [object CSSValueList]
+rect: style.getPropertyValue(background-repeat) : repeat
+rect: style.getPropertyCSSValue(background-repeat) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(background-size) : auto
+rect: style.getPropertyCSSValue(background-size) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(border-bottom-color) : rgb(0, 0, 0)
+rect: style.getPropertyCSSValue(border-bottom-color) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(border-bottom-left-radius) : 0px
+rect: style.getPropertyCSSValue(border-bottom-left-radius) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(border-bottom-right-radius) : 0px
+rect: style.getPropertyCSSValue(border-bottom-right-radius) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(border-bottom-style) : none
+rect: style.getPropertyCSSValue(border-bottom-style) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(border-bottom-width) : 0px
+rect: style.getPropertyCSSValue(border-bottom-width) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(border-collapse) : separate
+rect: style.getPropertyCSSValue(border-collapse) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(border-image-outset) : 0px
+rect: style.getPropertyCSSValue(border-image-outset) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(border-image-repeat) : stretch
+rect: style.getPropertyCSSValue(border-image-repeat) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(border-image-slice) : 100%
+rect: style.getPropertyCSSValue(border-image-slice) : [object CSSValue]
+rect: style.getPropertyValue(border-image-source) : none
+rect: style.getPropertyCSSValue(border-image-source) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(border-image-width) : 1
+rect: style.getPropertyCSSValue(border-image-width) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(border-left-color) : rgb(0, 0, 0)
+rect: style.getPropertyCSSValue(border-left-color) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(border-left-style) : none
+rect: style.getPropertyCSSValue(border-left-style) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(border-left-width) : 0px
+rect: style.getPropertyCSSValue(border-left-width) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(border-right-color) : rgb(0, 0, 0)
+rect: style.getPropertyCSSValue(border-right-color) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(border-right-style) : none
+rect: style.getPropertyCSSValue(border-right-style) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(border-right-width) : 0px
+rect: style.getPropertyCSSValue(border-right-width) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(border-top-color) : rgb(0, 0, 0)
+rect: style.getPropertyCSSValue(border-top-color) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(border-top-left-radius) : 0px
+rect: style.getPropertyCSSValue(border-top-left-radius) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(border-top-right-radius) : 0px
+rect: style.getPropertyCSSValue(border-top-right-radius) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(border-top-style) : none
+rect: style.getPropertyCSSValue(border-top-style) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(border-top-width) : 0px
+rect: style.getPropertyCSSValue(border-top-width) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(bottom) : auto
+rect: style.getPropertyCSSValue(bottom) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(box-shadow) : none
+rect: style.getPropertyCSSValue(box-shadow) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(box-sizing) : content-box
+rect: style.getPropertyCSSValue(box-sizing) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(caption-side) : top
+rect: style.getPropertyCSSValue(caption-side) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(clear) : none
+rect: style.getPropertyCSSValue(clear) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(clip) : auto
+rect: style.getPropertyCSSValue(clip) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(color) : rgb(0, 0, 0)
+rect: style.getPropertyCSSValue(color) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(content) : 
+rect: style.getPropertyCSSValue(content) : [object CSSValueList]
+rect: style.getPropertyValue(cursor) : auto
+rect: style.getPropertyCSSValue(cursor) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(direction) : ltr
+rect: style.getPropertyCSSValue(direction) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(display) : inline
+rect: style.getPropertyCSSValue(display) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(empty-cells) : show
+rect: style.getPropertyCSSValue(empty-cells) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(float) : none
+rect: style.getPropertyCSSValue(float) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(font-size) : 16px
+rect: style.getPropertyCSSValue(font-size) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(font-style) : normal
+rect: style.getPropertyCSSValue(font-style) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(font-synthesis) : style weight
+rect: style.getPropertyCSSValue(font-synthesis) : [object CSSValueList]
+rect: style.getPropertyValue(font-variant) : normal
+rect: style.getPropertyCSSValue(font-variant) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(font-weight) : normal
+rect: style.getPropertyCSSValue(font-weight) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(height) : 100px
+rect: style.getPropertyCSSValue(height) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(image-rendering) : auto
+rect: style.getPropertyCSSValue(image-rendering) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(left) : auto
+rect: style.getPropertyCSSValue(left) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(letter-spacing) : normal
+rect: style.getPropertyCSSValue(letter-spacing) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(line-height) : 18px
+rect: style.getPropertyCSSValue(line-height) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(list-style-image) : none
+rect: style.getPropertyCSSValue(list-style-image) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(list-style-position) : outside
+rect: style.getPropertyCSSValue(list-style-position) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(list-style-type) : disc
+rect: style.getPropertyCSSValue(list-style-type) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(margin-bottom) : 0px
+rect: style.getPropertyCSSValue(margin-bottom) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(margin-left) : 0px
+rect: style.getPropertyCSSValue(margin-left) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(margin-right) : 0px
+rect: style.getPropertyCSSValue(margin-right) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(margin-top) : 0px
+rect: style.getPropertyCSSValue(margin-top) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(max-height) : none
+rect: style.getPropertyCSSValue(max-height) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(max-width) : none
+rect: style.getPropertyCSSValue(max-width) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(min-height) : 0px
+rect: style.getPropertyCSSValue(min-height) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(min-width) : 0px
+rect: style.getPropertyCSSValue(min-width) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(opacity) : 1
+rect: style.getPropertyCSSValue(opacity) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(orphans) : auto
+rect: style.getPropertyCSSValue(orphans) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(outline-color) : rgb(0, 0, 0)
+rect: style.getPropertyCSSValue(outline-color) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(outline-style) : none
+rect: style.getPropertyCSSValue(outline-style) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(outline-width) : 0px
+rect: style.getPropertyCSSValue(outline-width) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(overflow-x) : visible
+rect: style.getPropertyCSSValue(overflow-x) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(overflow-y) : visible
+rect: style.getPropertyCSSValue(overflow-y) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(padding-bottom) : 0px
+rect: style.getPropertyCSSValue(padding-bottom) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(padding-left) : 0px
+rect: style.getPropertyCSSValue(padding-left) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(padding-right) : 0px
+rect: style.getPropertyCSSValue(padding-right) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(padding-top) : 0px
+rect: style.getPropertyCSSValue(padding-top) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(page-break-after) : auto
+rect: style.getPropertyCSSValue(page-break-after) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(page-break-before) : auto
+rect: style.getPropertyCSSValue(page-break-before) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(page-break-inside) : auto
+rect: style.getPropertyCSSValue(page-break-inside) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(pointer-events) : auto
+rect: style.getPropertyCSSValue(pointer-events) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(position) : static
+rect: style.getPropertyCSSValue(position) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(resize) : none
+rect: style.getPropertyCSSValue(resize) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(right) : auto
+rect: style.getPropertyCSSValue(right) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(speak) : normal
+rect: style.getPropertyCSSValue(speak) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(table-layout) : auto
+rect: style.getPropertyCSSValue(table-layout) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(tab-size) : 8
+rect: style.getPropertyCSSValue(tab-size) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(text-align) : start
+rect: style.getPropertyCSSValue(text-align) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(text-decoration) : none
+rect: style.getPropertyCSSValue(text-decoration) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(text-indent) : 0px
+rect: style.getPropertyCSSValue(text-indent) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(text-rendering) : auto
+rect: style.getPropertyCSSValue(text-rendering) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(text-shadow) : none
+rect: style.getPropertyCSSValue(text-shadow) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(text-overflow) : clip
+rect: style.getPropertyCSSValue(text-overflow) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(text-transform) : none
+rect: style.getPropertyCSSValue(text-transform) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(top) : auto
+rect: style.getPropertyCSSValue(top) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(transform) : none
+rect: style.getPropertyCSSValue(transform) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(transform-origin) : 0px 0px
+rect: style.getPropertyCSSValue(transform-origin) : [object CSSValueList]
+rect: style.getPropertyValue(transform-style) : flat
+rect: style.getPropertyCSSValue(transform-style) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(unicode-bidi) : normal
+rect: style.getPropertyCSSValue(unicode-bidi) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(vertical-align) : baseline
+rect: style.getPropertyCSSValue(vertical-align) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(visibility) : visible
+rect: style.getPropertyCSSValue(visibility) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(white-space) : normal
+rect: style.getPropertyCSSValue(white-space) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(widows) : auto
+rect: style.getPropertyCSSValue(widows) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(width) : 100px
+rect: style.getPropertyCSSValue(width) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(word-break) : normal
+rect: style.getPropertyCSSValue(word-break) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(word-spacing) : 0px
+rect: style.getPropertyCSSValue(word-spacing) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(word-wrap) : normal
+rect: style.getPropertyCSSValue(word-wrap) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(z-index) : auto
+rect: style.getPropertyCSSValue(z-index) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(zoom) : 1
+rect: style.getPropertyCSSValue(zoom) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-animation-delay) : 0s
+rect: style.getPropertyCSSValue(-webkit-animation-delay) : [object CSSValueList]
+rect: style.getPropertyValue(-webkit-animation-direction) : normal
+rect: style.getPropertyCSSValue(-webkit-animation-direction) : [object CSSValueList]
+rect: style.getPropertyValue(-webkit-animation-duration) : 0s
+rect: style.getPropertyCSSValue(-webkit-animation-duration) : [object CSSValueList]
+rect: style.getPropertyValue(-webkit-animation-fill-mode) : none
+rect: style.getPropertyCSSValue(-webkit-animation-fill-mode) : [object CSSValueList]
+rect: style.getPropertyValue(-webkit-animation-iteration-count) : 1
+rect: style.getPropertyCSSValue(-webkit-animation-iteration-count) : [object CSSValueList]
+rect: style.getPropertyValue(-webkit-animation-name) : none
+rect: style.getPropertyCSSValue(-webkit-animation-name) : [object CSSValueList]
+rect: style.getPropertyValue(-webkit-animation-play-state) : running
+rect: style.getPropertyCSSValue(-webkit-animation-play-state) : [object CSSValueList]
+rect: style.getPropertyValue(-webkit-animation-timing-function) : ease
+rect: style.getPropertyCSSValue(-webkit-animation-timing-function) : [object CSSValueList]
+rect: style.getPropertyValue(-webkit-appearance) : none
+rect: style.getPropertyCSSValue(-webkit-appearance) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-backface-visibility) : visible
+rect: style.getPropertyCSSValue(-webkit-backface-visibility) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-background-clip) : border-box
+rect: style.getPropertyCSSValue(-webkit-background-clip) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-background-composite) : source-over
+rect: style.getPropertyCSSValue(-webkit-background-composite) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-background-origin) : padding-box
+rect: style.getPropertyCSSValue(-webkit-background-origin) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-background-size) : auto
+rect: style.getPropertyCSSValue(-webkit-background-size) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-border-fit) : border
+rect: style.getPropertyCSSValue(-webkit-border-fit) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-border-horizontal-spacing) : 0px
+rect: style.getPropertyCSSValue(-webkit-border-horizontal-spacing) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-border-image) : none
+rect: style.getPropertyCSSValue(-webkit-border-image) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-border-vertical-spacing) : 0px
+rect: style.getPropertyCSSValue(-webkit-border-vertical-spacing) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-box-align) : stretch
+rect: style.getPropertyCSSValue(-webkit-box-align) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-box-decoration-break) : slice
+rect: style.getPropertyCSSValue(-webkit-box-decoration-break) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-box-direction) : normal
+rect: style.getPropertyCSSValue(-webkit-box-direction) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-box-flex) : 0
+rect: style.getPropertyCSSValue(-webkit-box-flex) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-box-flex-group) : 1
+rect: style.getPropertyCSSValue(-webkit-box-flex-group) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-box-lines) : single
+rect: style.getPropertyCSSValue(-webkit-box-lines) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-box-ordinal-group) : 1
+rect: style.getPropertyCSSValue(-webkit-box-ordinal-group) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-box-orient) : horizontal
+rect: style.getPropertyCSSValue(-webkit-box-orient) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-box-pack) : start
+rect: style.getPropertyCSSValue(-webkit-box-pack) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-box-reflect) : none
+rect: style.getPropertyCSSValue(-webkit-box-reflect) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-box-shadow) : none
+rect: style.getPropertyCSSValue(-webkit-box-shadow) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-column-break-after) : auto
+rect: style.getPropertyCSSValue(-webkit-column-break-after) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-column-break-before) : auto
+rect: style.getPropertyCSSValue(-webkit-column-break-before) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-column-break-inside) : auto
+rect: style.getPropertyCSSValue(-webkit-column-break-inside) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-column-axis) : auto
+rect: style.getPropertyCSSValue(-webkit-column-axis) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(column-count) : auto
+rect: style.getPropertyCSSValue(column-count) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(column-fill) : balance
+rect: style.getPropertyCSSValue(column-fill) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(column-gap) : normal
+rect: style.getPropertyCSSValue(column-gap) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(column-rule-color) : rgb(0, 0, 0)
+rect: style.getPropertyCSSValue(column-rule-color) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(column-rule-style) : none
+rect: style.getPropertyCSSValue(column-rule-style) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(column-rule-width) : 0px
+rect: style.getPropertyCSSValue(column-rule-width) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(column-span) : none
+rect: style.getPropertyCSSValue(column-span) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(column-width) : auto
+rect: style.getPropertyCSSValue(column-width) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(align-content) : normal
+rect: style.getPropertyCSSValue(align-content) : [object CSSValueList]
+rect: style.getPropertyValue(align-items) : normal
+rect: style.getPropertyCSSValue(align-items) : [object CSSValueList]
+rect: style.getPropertyValue(align-self) : normal
+rect: style.getPropertyCSSValue(align-self) : [object CSSValueList]
+rect: style.getPropertyValue(filter) : none
+rect: style.getPropertyCSSValue(filter) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(flex-direction) : row
+rect: style.getPropertyCSSValue(flex-direction) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(flex-wrap) : nowrap
+rect: style.getPropertyCSSValue(flex-wrap) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(justify-content) : normal
+rect: style.getPropertyCSSValue(justify-content) : [object CSSValueList]
+rect: style.getPropertyValue(justify-self) : normal
+rect: style.getPropertyCSSValue(justify-self) : [object CSSValueList]
+rect: style.getPropertyValue(justify-items) : normal
+rect: style.getPropertyCSSValue(justify-items) : [object CSSValueList]
+rect: style.getPropertyValue(-webkit-font-kerning) : auto
+rect: style.getPropertyCSSValue(-webkit-font-kerning) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-font-smoothing) : auto
+rect: style.getPropertyCSSValue(-webkit-font-smoothing) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(font-variant-ligatures) : normal
+rect: style.getPropertyCSSValue(font-variant-ligatures) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(font-variant-position) : normal
+rect: style.getPropertyCSSValue(font-variant-position) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(font-variant-caps) : normal
+rect: style.getPropertyCSSValue(font-variant-caps) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(font-variant-numeric) : normal
+rect: style.getPropertyCSSValue(font-variant-numeric) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(font-variant-alternates) : normal
+rect: style.getPropertyCSSValue(font-variant-alternates) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(font-variant-east-asian) : normal
+rect: style.getPropertyCSSValue(font-variant-east-asian) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-hyphenate-character) : auto
+rect: style.getPropertyCSSValue(-webkit-hyphenate-character) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-hyphenate-limit-after) : auto
+rect: style.getPropertyCSSValue(-webkit-hyphenate-limit-after) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-hyphenate-limit-before) : auto
+rect: style.getPropertyCSSValue(-webkit-hyphenate-limit-before) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-hyphenate-limit-lines) : no-limit
+rect: style.getPropertyCSSValue(-webkit-hyphenate-limit-lines) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-hyphens) : manual
+rect: style.getPropertyCSSValue(-webkit-hyphens) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-line-align) : none
+rect: style.getPropertyCSSValue(-webkit-line-align) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-line-box-contain) : block inline replaced
+rect: style.getPropertyCSSValue(-webkit-line-box-contain) : [object CSSValue]
+rect: style.getPropertyValue(-webkit-line-break) : auto
+rect: style.getPropertyCSSValue(-webkit-line-break) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-line-clamp) : none
+rect: style.getPropertyCSSValue(-webkit-line-clamp) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-line-grid) : none
+rect: style.getPropertyCSSValue(-webkit-line-grid) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-line-snap) : none
+rect: style.getPropertyCSSValue(-webkit-line-snap) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-locale) : auto
+rect: style.getPropertyCSSValue(-webkit-locale) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-margin-before-collapse) : collapse
+rect: style.getPropertyCSSValue(-webkit-margin-before-collapse) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-margin-after-collapse) : collapse
+rect: style.getPropertyCSSValue(-webkit-margin-after-collapse) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-marquee-direction) : auto
+rect: style.getPropertyCSSValue(-webkit-marquee-direction) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-marquee-increment) : 6px
+rect: style.getPropertyCSSValue(-webkit-marquee-increment) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-marquee-repetition) : infinite
+rect: style.getPropertyCSSValue(-webkit-marquee-repetition) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-marquee-style) : scroll
+rect: style.getPropertyCSSValue(-webkit-marquee-style) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-mask-box-image) : none
+rect: style.getPropertyCSSValue(-webkit-mask-box-image) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-mask-box-image-outset) : 0px
+rect: style.getPropertyCSSValue(-webkit-mask-box-image-outset) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-mask-box-image-repeat) : stretch
+rect: style.getPropertyCSSValue(-webkit-mask-box-image-repeat) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-mask-box-image-slice) : 0 fill
+rect: style.getPropertyCSSValue(-webkit-mask-box-image-slice) : [object CSSValue]
+rect: style.getPropertyValue(-webkit-mask-box-image-source) : none
+rect: style.getPropertyCSSValue(-webkit-mask-box-image-source) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-mask-box-image-width) : auto
+rect: style.getPropertyCSSValue(-webkit-mask-box-image-width) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-mask-clip) : border-box
+rect: style.getPropertyCSSValue(-webkit-mask-clip) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-mask-composite) : source-over
+rect: style.getPropertyCSSValue(-webkit-mask-composite) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-mask-image) : none
+rect: style.getPropertyCSSValue(-webkit-mask-image) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-mask-origin) : border-box
+rect: style.getPropertyCSSValue(-webkit-mask-origin) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-mask-position) : 0% 0%
+rect: style.getPropertyCSSValue(-webkit-mask-position) : [object CSSValueList]
+rect: style.getPropertyValue(-webkit-mask-repeat) : repeat
+rect: style.getPropertyCSSValue(-webkit-mask-repeat) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-mask-size) : auto
+rect: style.getPropertyCSSValue(-webkit-mask-size) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-nbsp-mode) : normal
+rect: style.getPropertyCSSValue(-webkit-nbsp-mode) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(order) : 0
+rect: style.getPropertyCSSValue(order) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(perspective) : none
+rect: style.getPropertyCSSValue(perspective) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(perspective-origin) : 0px 0px
+rect: style.getPropertyCSSValue(perspective-origin) : [object CSSValueList]
+rect: style.getPropertyValue(-webkit-print-color-adjust) : economy
+rect: style.getPropertyCSSValue(-webkit-print-color-adjust) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-rtl-ordering) : logical
+rect: style.getPropertyCSSValue(-webkit-rtl-ordering) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-text-combine) : none
+rect: style.getPropertyCSSValue(-webkit-text-combine) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-text-decorations-in-effect) : none
+rect: style.getPropertyCSSValue(-webkit-text-decorations-in-effect) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-text-emphasis-color) : rgb(0, 0, 0)
+rect: style.getPropertyCSSValue(-webkit-text-emphasis-color) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-text-emphasis-position) : over right
+rect: style.getPropertyCSSValue(-webkit-text-emphasis-position) : [object CSSValueList]
+rect: style.getPropertyValue(-webkit-text-emphasis-style) : none
+rect: style.getPropertyCSSValue(-webkit-text-emphasis-style) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-text-fill-color) : rgb(0, 0, 0)
+rect: style.getPropertyCSSValue(-webkit-text-fill-color) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-text-orientation) : mixed
+rect: style.getPropertyCSSValue(-webkit-text-orientation) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-text-security) : none
+rect: style.getPropertyCSSValue(-webkit-text-security) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-text-stroke-color) : rgb(0, 0, 0)
+rect: style.getPropertyCSSValue(-webkit-text-stroke-color) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-text-stroke-width) : 0px
+rect: style.getPropertyCSSValue(-webkit-text-stroke-width) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-transform-style) : flat
+rect: style.getPropertyCSSValue(-webkit-transform-style) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-transition-delay) : 0s
+rect: style.getPropertyCSSValue(-webkit-transition-delay) : [object CSSValueList]
+rect: style.getPropertyValue(-webkit-transition-duration) : 0s
+rect: style.getPropertyCSSValue(-webkit-transition-duration) : [object CSSValueList]
+rect: style.getPropertyValue(-webkit-transition-property) : all
+rect: style.getPropertyCSSValue(-webkit-transition-property) : [object CSSValueList]
+rect: style.getPropertyValue(-webkit-transition-timing-function) : ease
+rect: style.getPropertyCSSValue(-webkit-transition-timing-function) : [object CSSValueList]
+rect: style.getPropertyValue(-webkit-user-drag) : auto
+rect: style.getPropertyCSSValue(-webkit-user-drag) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-user-modify) : read-only
+rect: style.getPropertyCSSValue(-webkit-user-modify) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-user-select) : text
+rect: style.getPropertyCSSValue(-webkit-user-select) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-writing-mode) : horizontal-tb
+rect: style.getPropertyCSSValue(-webkit-writing-mode) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(clip-path) : none
+rect: style.getPropertyCSSValue(clip-path) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(clip-rule) : nonzero
+rect: style.getPropertyCSSValue(clip-rule) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(mask) : none
+rect: style.getPropertyCSSValue(mask) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(filter) : none
+rect: style.getPropertyCSSValue(filter) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(flood-color) : rgb(0, 0, 0)
+rect: style.getPropertyCSSValue(flood-color) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(flood-opacity) : 1
+rect: style.getPropertyCSSValue(flood-opacity) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(lighting-color) : rgb(255, 255, 255)
+rect: style.getPropertyCSSValue(lighting-color) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(stop-color) : rgb(0, 0, 0)
+rect: style.getPropertyCSSValue(stop-color) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(stop-opacity) : 1
+rect: style.getPropertyCSSValue(stop-opacity) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(color-interpolation) : srgb
+rect: style.getPropertyCSSValue(color-interpolation) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(color-interpolation-filters) : linearrgb
+rect: style.getPropertyCSSValue(color-interpolation-filters) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(color-rendering) : auto
+rect: style.getPropertyCSSValue(color-rendering) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(fill) : rgb(0, 0, 255)
+rect: style.getPropertyCSSValue(fill) : [object SVGPaint]
+rect: style.getPropertyValue(fill-opacity) : 1
+rect: style.getPropertyCSSValue(fill-opacity) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(fill-rule) : nonzero
+rect: style.getPropertyCSSValue(fill-rule) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(marker-end) : none
+rect: style.getPropertyCSSValue(marker-end) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(marker-mid) : none
+rect: style.getPropertyCSSValue(marker-mid) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(marker-start) : none
+rect: style.getPropertyCSSValue(marker-start) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(shape-rendering) : auto
+rect: style.getPropertyCSSValue(shape-rendering) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(stroke) : rgb(255, 165, 0)
+rect: style.getPropertyCSSValue(stroke) : [object SVGPaint]
+rect: style.getPropertyValue(stroke-dasharray) : none
+rect: style.getPropertyCSSValue(stroke-dasharray) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(stroke-dashoffset) : 0px
+rect: style.getPropertyCSSValue(stroke-dashoffset) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(stroke-linecap) : butt
+rect: style.getPropertyCSSValue(stroke-linecap) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(stroke-linejoin) : miter
+rect: style.getPropertyCSSValue(stroke-linejoin) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(stroke-miterlimit) : 4
+rect: style.getPropertyCSSValue(stroke-miterlimit) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(stroke-opacity) : 1
+rect: style.getPropertyCSSValue(stroke-opacity) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(stroke-width) : 2px
+rect: style.getPropertyCSSValue(stroke-width) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(alignment-baseline) : auto
+rect: style.getPropertyCSSValue(alignment-baseline) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(baseline-shift) : baseline
+rect: style.getPropertyCSSValue(baseline-shift) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(dominant-baseline) : auto
+rect: style.getPropertyCSSValue(dominant-baseline) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(kerning) : 0
+rect: style.getPropertyCSSValue(kerning) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(text-anchor) : start
+rect: style.getPropertyCSSValue(text-anchor) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(writing-mode) : lr-tb
+rect: style.getPropertyCSSValue(writing-mode) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(glyph-orientation-horizontal) : 0deg
+rect: style.getPropertyCSSValue(glyph-orientation-horizontal) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(glyph-orientation-vertical) : auto
+rect: style.getPropertyCSSValue(glyph-orientation-vertical) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-svg-shadow) : none
+rect: style.getPropertyCSSValue(-webkit-svg-shadow) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(vector-effect) : none
+rect: style.getPropertyCSSValue(vector-effect) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(background-attachment) : scroll
+g: style.getPropertyCSSValue(background-attachment) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(background-clip) : border-box
+g: style.getPropertyCSSValue(background-clip) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(background-color) : rgba(0, 0, 0, 0)
+g: style.getPropertyCSSValue(background-color) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(background-image) : none
+g: style.getPropertyCSSValue(background-image) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(background-origin) : padding-box
+g: style.getPropertyCSSValue(background-origin) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(background-position) : 0% 0%
+g: style.getPropertyCSSValue(background-position) : [object CSSValueList]
+g: style.getPropertyValue(background-repeat) : repeat
+g: style.getPropertyCSSValue(background-repeat) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(background-size) : auto
+g: style.getPropertyCSSValue(background-size) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(border-bottom-color) : rgb(0, 0, 0)
+g: style.getPropertyCSSValue(border-bottom-color) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(border-bottom-left-radius) : 0px
+g: style.getPropertyCSSValue(border-bottom-left-radius) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(border-bottom-right-radius) : 0px
+g: style.getPropertyCSSValue(border-bottom-right-radius) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(border-bottom-style) : none
+g: style.getPropertyCSSValue(border-bottom-style) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(border-bottom-width) : 0px
+g: style.getPropertyCSSValue(border-bottom-width) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(border-collapse) : separate
+g: style.getPropertyCSSValue(border-collapse) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(border-image-outset) : 0px
+g: style.getPropertyCSSValue(border-image-outset) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(border-image-repeat) : stretch
+g: style.getPropertyCSSValue(border-image-repeat) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(border-image-slice) : 100%
+g: style.getPropertyCSSValue(border-image-slice) : [object CSSValue]
+g: style.getPropertyValue(border-image-source) : none
+g: style.getPropertyCSSValue(border-image-source) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(border-image-width) : 1
+g: style.getPropertyCSSValue(border-image-width) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(border-left-color) : rgb(0, 0, 0)
+g: style.getPropertyCSSValue(border-left-color) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(border-left-style) : none
+g: style.getPropertyCSSValue(border-left-style) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(border-left-width) : 0px
+g: style.getPropertyCSSValue(border-left-width) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(border-right-color) : rgb(0, 0, 0)
+g: style.getPropertyCSSValue(border-right-color) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(border-right-style) : none
+g: style.getPropertyCSSValue(border-right-style) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(border-right-width) : 0px
+g: style.getPropertyCSSValue(border-right-width) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(border-top-color) : rgb(0, 0, 0)
+g: style.getPropertyCSSValue(border-top-color) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(border-top-left-radius) : 0px
+g: style.getPropertyCSSValue(border-top-left-radius) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(border-top-right-radius) : 0px
+g: style.getPropertyCSSValue(border-top-right-radius) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(border-top-style) : none
+g: style.getPropertyCSSValue(border-top-style) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(border-top-width) : 0px
+g: style.getPropertyCSSValue(border-top-width) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(bottom) : auto
+g: style.getPropertyCSSValue(bottom) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(box-shadow) : none
+g: style.getPropertyCSSValue(box-shadow) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(box-sizing) : content-box
+g: style.getPropertyCSSValue(box-sizing) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(caption-side) : top
+g: style.getPropertyCSSValue(caption-side) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(clear) : none
+g: style.getPropertyCSSValue(clear) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(clip) : auto
+g: style.getPropertyCSSValue(clip) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(color) : rgb(0, 0, 0)
+g: style.getPropertyCSSValue(color) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(content) : 
+g: style.getPropertyCSSValue(content) : [object CSSValueList]
+g: style.getPropertyValue(cursor) : auto
+g: style.getPropertyCSSValue(cursor) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(direction) : ltr
+g: style.getPropertyCSSValue(direction) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(display) : inline
+g: style.getPropertyCSSValue(display) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(empty-cells) : show
+g: style.getPropertyCSSValue(empty-cells) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(float) : none
+g: style.getPropertyCSSValue(float) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(font-size) : 16px
+g: style.getPropertyCSSValue(font-size) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(font-style) : normal
+g: style.getPropertyCSSValue(font-style) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(font-synthesis) : style weight
+g: style.getPropertyCSSValue(font-synthesis) : [object CSSValueList]
+g: style.getPropertyValue(font-variant) : normal
+g: style.getPropertyCSSValue(font-variant) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(font-weight) : normal
+g: style.getPropertyCSSValue(font-weight) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(height) : auto
+g: style.getPropertyCSSValue(height) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(image-rendering) : auto
+g: style.getPropertyCSSValue(image-rendering) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(left) : auto
+g: style.getPropertyCSSValue(left) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(letter-spacing) : normal
+g: style.getPropertyCSSValue(letter-spacing) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(line-height) : 18px
+g: style.getPropertyCSSValue(line-height) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(list-style-image) : none
+g: style.getPropertyCSSValue(list-style-image) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(list-style-position) : outside
+g: style.getPropertyCSSValue(list-style-position) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(list-style-type) : disc
+g: style.getPropertyCSSValue(list-style-type) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(margin-bottom) : 0px
+g: style.getPropertyCSSValue(margin-bottom) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(margin-left) : 0px
+g: style.getPropertyCSSValue(margin-left) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(margin-right) : 0px
+g: style.getPropertyCSSValue(margin-right) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(margin-top) : 0px
+g: style.getPropertyCSSValue(margin-top) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(max-height) : none
+g: style.getPropertyCSSValue(max-height) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(max-width) : none
+g: style.getPropertyCSSValue(max-width) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(min-height) : 0px
+g: style.getPropertyCSSValue(min-height) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(min-width) : 0px
+g: style.getPropertyCSSValue(min-width) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(opacity) : 1
+g: style.getPropertyCSSValue(opacity) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(orphans) : auto
+g: style.getPropertyCSSValue(orphans) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(outline-color) : rgb(0, 0, 0)
+g: style.getPropertyCSSValue(outline-color) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(outline-style) : none
+g: style.getPropertyCSSValue(outline-style) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(outline-width) : 0px
+g: style.getPropertyCSSValue(outline-width) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(overflow-x) : visible
+g: style.getPropertyCSSValue(overflow-x) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(overflow-y) : visible
+g: style.getPropertyCSSValue(overflow-y) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(padding-bottom) : 0px
+g: style.getPropertyCSSValue(padding-bottom) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(padding-left) : 0px
+g: style.getPropertyCSSValue(padding-left) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(padding-right) : 0px
+g: style.getPropertyCSSValue(padding-right) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(padding-top) : 0px
+g: style.getPropertyCSSValue(padding-top) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(page-break-after) : auto
+g: style.getPropertyCSSValue(page-break-after) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(page-break-before) : auto
+g: style.getPropertyCSSValue(page-break-before) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(page-break-inside) : auto
+g: style.getPropertyCSSValue(page-break-inside) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(pointer-events) : auto
+g: style.getPropertyCSSValue(pointer-events) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(position) : static
+g: style.getPropertyCSSValue(position) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(resize) : none
+g: style.getPropertyCSSValue(resize) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(right) : auto
+g: style.getPropertyCSSValue(right) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(speak) : normal
+g: style.getPropertyCSSValue(speak) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(table-layout) : auto
+g: style.getPropertyCSSValue(table-layout) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(tab-size) : 8
+g: style.getPropertyCSSValue(tab-size) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(text-align) : start
+g: style.getPropertyCSSValue(text-align) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(text-decoration) : none
+g: style.getPropertyCSSValue(text-decoration) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(text-indent) : 0px
+g: style.getPropertyCSSValue(text-indent) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(text-rendering) : auto
+g: style.getPropertyCSSValue(text-rendering) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(text-shadow) : none
+g: style.getPropertyCSSValue(text-shadow) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(text-overflow) : clip
+g: style.getPropertyCSSValue(text-overflow) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(text-transform) : none
+g: style.getPropertyCSSValue(text-transform) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(top) : auto
+g: style.getPropertyCSSValue(top) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(transform) : none
+g: style.getPropertyCSSValue(transform) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(transform-origin) : 0px 0px
+g: style.getPropertyCSSValue(transform-origin) : [object CSSValueList]
+g: style.getPropertyValue(transform-style) : flat
+g: style.getPropertyCSSValue(transform-style) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(unicode-bidi) : normal
+g: style.getPropertyCSSValue(unicode-bidi) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(vertical-align) : baseline
+g: style.getPropertyCSSValue(vertical-align) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(visibility) : visible
+g: style.getPropertyCSSValue(visibility) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(white-space) : normal
+g: style.getPropertyCSSValue(white-space) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(widows) : auto
+g: style.getPropertyCSSValue(widows) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(width) : auto
+g: style.getPropertyCSSValue(width) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(word-break) : normal
+g: style.getPropertyCSSValue(word-break) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(word-spacing) : 0px
+g: style.getPropertyCSSValue(word-spacing) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(word-wrap) : normal
+g: style.getPropertyCSSValue(word-wrap) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(z-index) : auto
+g: style.getPropertyCSSValue(z-index) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(zoom) : 1
+g: style.getPropertyCSSValue(zoom) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-animation-delay) : 0s
+g: style.getPropertyCSSValue(-webkit-animation-delay) : [object CSSValueList]
+g: style.getPropertyValue(-webkit-animation-direction) : normal
+g: style.getPropertyCSSValue(-webkit-animation-direction) : [object CSSValueList]
+g: style.getPropertyValue(-webkit-animation-duration) : 0s
+g: style.getPropertyCSSValue(-webkit-animation-duration) : [object CSSValueList]
+g: style.getPropertyValue(-webkit-animation-fill-mode) : none
+g: style.getPropertyCSSValue(-webkit-animation-fill-mode) : [object CSSValueList]
+g: style.getPropertyValue(-webkit-animation-iteration-count) : 1
+g: style.getPropertyCSSValue(-webkit-animation-iteration-count) : [object CSSValueList]
+g: style.getPropertyValue(-webkit-animation-name) : none
+g: style.getPropertyCSSValue(-webkit-animation-name) : [object CSSValueList]
+g: style.getPropertyValue(-webkit-animation-play-state) : running
+g: style.getPropertyCSSValue(-webkit-animation-play-state) : [object CSSValueList]
+g: style.getPropertyValue(-webkit-animation-timing-function) : ease
+g: style.getPropertyCSSValue(-webkit-animation-timing-function) : [object CSSValueList]
+g: style.getPropertyValue(-webkit-appearance) : none
+g: style.getPropertyCSSValue(-webkit-appearance) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-backface-visibility) : visible
+g: style.getPropertyCSSValue(-webkit-backface-visibility) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-background-clip) : border-box
+g: style.getPropertyCSSValue(-webkit-background-clip) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-background-composite) : source-over
+g: style.getPropertyCSSValue(-webkit-background-composite) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-background-origin) : padding-box
+g: style.getPropertyCSSValue(-webkit-background-origin) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-background-size) : auto
+g: style.getPropertyCSSValue(-webkit-background-size) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-border-fit) : border
+g: style.getPropertyCSSValue(-webkit-border-fit) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-border-horizontal-spacing) : 0px
+g: style.getPropertyCSSValue(-webkit-border-horizontal-spacing) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-border-image) : none
+g: style.getPropertyCSSValue(-webkit-border-image) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-border-vertical-spacing) : 0px
+g: style.getPropertyCSSValue(-webkit-border-vertical-spacing) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-box-align) : stretch
+g: style.getPropertyCSSValue(-webkit-box-align) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-box-decoration-break) : slice
+g: style.getPropertyCSSValue(-webkit-box-decoration-break) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-box-direction) : normal
+g: style.getPropertyCSSValue(-webkit-box-direction) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-box-flex) : 0
+g: style.getPropertyCSSValue(-webkit-box-flex) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-box-flex-group) : 1
+g: style.getPropertyCSSValue(-webkit-box-flex-group) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-box-lines) : single
+g: style.getPropertyCSSValue(-webkit-box-lines) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-box-ordinal-group) : 1
+g: style.getPropertyCSSValue(-webkit-box-ordinal-group) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-box-orient) : horizontal
+g: style.getPropertyCSSValue(-webkit-box-orient) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-box-pack) : start
+g: style.getPropertyCSSValue(-webkit-box-pack) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-box-reflect) : none
+g: style.getPropertyCSSValue(-webkit-box-reflect) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-box-shadow) : none
+g: style.getPropertyCSSValue(-webkit-box-shadow) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-column-break-after) : auto
+g: style.getPropertyCSSValue(-webkit-column-break-after) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-column-break-before) : auto
+g: style.getPropertyCSSValue(-webkit-column-break-before) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-column-break-inside) : auto
+g: style.getPropertyCSSValue(-webkit-column-break-inside) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-column-axis) : auto
+g: style.getPropertyCSSValue(-webkit-column-axis) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(column-count) : auto
+g: style.getPropertyCSSValue(column-count) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(column-fill) : balance
+g: style.getPropertyCSSValue(column-fill) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(column-gap) : normal
+g: style.getPropertyCSSValue(column-gap) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(column-rule-color) : rgb(0, 0, 0)
+g: style.getPropertyCSSValue(column-rule-color) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(column-rule-style) : none
+g: style.getPropertyCSSValue(column-rule-style) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(column-rule-width) : 0px
+g: style.getPropertyCSSValue(column-rule-width) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(column-span) : none
+g: style.getPropertyCSSValue(column-span) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(column-width) : auto
+g: style.getPropertyCSSValue(column-width) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(align-content) : normal
+g: style.getPropertyCSSValue(align-content) : [object CSSValueList]
+g: style.getPropertyValue(align-items) : normal
+g: style.getPropertyCSSValue(align-items) : [object CSSValueList]
+g: style.getPropertyValue(align-self) : normal
+g: style.getPropertyCSSValue(align-self) : [object CSSValueList]
+g: style.getPropertyValue(filter) : none
+g: style.getPropertyCSSValue(filter) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(flex-direction) : row
+g: style.getPropertyCSSValue(flex-direction) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(flex-wrap) : nowrap
+g: style.getPropertyCSSValue(flex-wrap) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(justify-content) : normal
+g: style.getPropertyCSSValue(justify-content) : [object CSSValueList]
+g: style.getPropertyValue(justify-self) : normal
+g: style.getPropertyCSSValue(justify-self) : [object CSSValueList]
+g: style.getPropertyValue(justify-items) : normal
+g: style.getPropertyCSSValue(justify-items) : [object CSSValueList]
+g: style.getPropertyValue(-webkit-font-kerning) : auto
+g: style.getPropertyCSSValue(-webkit-font-kerning) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-font-smoothing) : auto
+g: style.getPropertyCSSValue(-webkit-font-smoothing) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(font-variant-ligatures) : normal
+g: style.getPropertyCSSValue(font-variant-ligatures) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(font-variant-position) : normal
+g: style.getPropertyCSSValue(font-variant-position) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(font-variant-caps) : normal
+g: style.getPropertyCSSValue(font-variant-caps) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(font-variant-numeric) : normal
+g: style.getPropertyCSSValue(font-variant-numeric) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(font-variant-alternates) : normal
+g: style.getPropertyCSSValue(font-variant-alternates) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(font-variant-east-asian) : normal
+g: style.getPropertyCSSValue(font-variant-east-asian) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-hyphenate-character) : auto
+g: style.getPropertyCSSValue(-webkit-hyphenate-character) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-hyphenate-limit-after) : auto
+g: style.getPropertyCSSValue(-webkit-hyphenate-limit-after) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-hyphenate-limit-before) : auto
+g: style.getPropertyCSSValue(-webkit-hyphenate-limit-before) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-hyphenate-limit-lines) : no-limit
+g: style.getPropertyCSSValue(-webkit-hyphenate-limit-lines) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-hyphens) : manual
+g: style.getPropertyCSSValue(-webkit-hyphens) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-line-align) : none
+g: style.getPropertyCSSValue(-webkit-line-align) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-line-box-contain) : block inline replaced
+g: style.getPropertyCSSValue(-webkit-line-box-contain) : [object CSSValue]
+g: style.getPropertyValue(-webkit-line-break) : auto
+g: style.getPropertyCSSValue(-webkit-line-break) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-line-clamp) : none
+g: style.getPropertyCSSValue(-webkit-line-clamp) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-line-grid) : none
+g: style.getPropertyCSSValue(-webkit-line-grid) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-line-snap) : none
+g: style.getPropertyCSSValue(-webkit-line-snap) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-locale) : auto
+g: style.getPropertyCSSValue(-webkit-locale) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-margin-before-collapse) : collapse
+g: style.getPropertyCSSValue(-webkit-margin-before-collapse) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-margin-after-collapse) : collapse
+g: style.getPropertyCSSValue(-webkit-margin-after-collapse) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-marquee-direction) : auto
+g: style.getPropertyCSSValue(-webkit-marquee-direction) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-marquee-increment) : 6px
+g: style.getPropertyCSSValue(-webkit-marquee-increment) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-marquee-repetition) : infinite
+g: style.getPropertyCSSValue(-webkit-marquee-repetition) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-marquee-style) : scroll
+g: style.getPropertyCSSValue(-webkit-marquee-style) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-mask-box-image) : none
+g: style.getPropertyCSSValue(-webkit-mask-box-image) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-mask-box-image-outset) : 0px
+g: style.getPropertyCSSValue(-webkit-mask-box-image-outset) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-mask-box-image-repeat) : stretch
+g: style.getPropertyCSSValue(-webkit-mask-box-image-repeat) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-mask-box-image-slice) : 0 fill
+g: style.getPropertyCSSValue(-webkit-mask-box-image-slice) : [object CSSValue]
+g: style.getPropertyValue(-webkit-mask-box-image-source) : none
+g: style.getPropertyCSSValue(-webkit-mask-box-image-source) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-mask-box-image-width) : auto
+g: style.getPropertyCSSValue(-webkit-mask-box-image-width) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-mask-clip) : border-box
+g: style.getPropertyCSSValue(-webkit-mask-clip) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-mask-composite) : source-over
+g: style.getPropertyCSSValue(-webkit-mask-composite) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-mask-image) : none
+g: style.getPropertyCSSValue(-webkit-mask-image) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-mask-origin) : border-box
+g: style.getPropertyCSSValue(-webkit-mask-origin) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-mask-position) : 0% 0%
+g: style.getPropertyCSSValue(-webkit-mask-position) : [object CSSValueList]
+g: style.getPropertyValue(-webkit-mask-repeat) : repeat
+g: style.getPropertyCSSValue(-webkit-mask-repeat) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-mask-size) : auto
+g: style.getPropertyCSSValue(-webkit-mask-size) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-nbsp-mode) : normal
+g: style.getPropertyCSSValue(-webkit-nbsp-mode) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(order) : 0
+g: style.getPropertyCSSValue(order) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(perspective) : none
+g: style.getPropertyCSSValue(perspective) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(perspective-origin) : 0px 0px
+g: style.getPropertyCSSValue(perspective-origin) : [object CSSValueList]
+g: style.getPropertyValue(-webkit-print-color-adjust) : economy
+g: style.getPropertyCSSValue(-webkit-print-color-adjust) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-rtl-ordering) : logical
+g: style.getPropertyCSSValue(-webkit-rtl-ordering) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-text-combine) : none
+g: style.getPropertyCSSValue(-webkit-text-combine) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-text-decorations-in-effect) : none
+g: style.getPropertyCSSValue(-webkit-text-decorations-in-effect) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-text-emphasis-color) : rgb(0, 0, 0)
+g: style.getPropertyCSSValue(-webkit-text-emphasis-color) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-text-emphasis-position) : over right
+g: style.getPropertyCSSValue(-webkit-text-emphasis-position) : [object CSSValueList]
+g: style.getPropertyValue(-webkit-text-emphasis-style) : none
+g: style.getPropertyCSSValue(-webkit-text-emphasis-style) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-text-fill-color) : rgb(0, 0, 0)
+g: style.getPropertyCSSValue(-webkit-text-fill-color) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-text-orientation) : mixed
+g: style.getPropertyCSSValue(-webkit-text-orientation) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-text-security) : none
+g: style.getPropertyCSSValue(-webkit-text-security) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-text-stroke-color) : rgb(0, 0, 0)
+g: style.getPropertyCSSValue(-webkit-text-stroke-color) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-text-stroke-width) : 0px
+g: style.getPropertyCSSValue(-webkit-text-stroke-width) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-transform-style) : flat
+g: style.getPropertyCSSValue(-webkit-transform-style) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-transition-delay) : 0s
+g: style.getPropertyCSSValue(-webkit-transition-delay) : [object CSSValueList]
+g: style.getPropertyValue(-webkit-transition-duration) : 0s
+g: style.getPropertyCSSValue(-webkit-transition-duration) : [object CSSValueList]
+g: style.getPropertyValue(-webkit-transition-property) : all
+g: style.getPropertyCSSValue(-webkit-transition-property) : [object CSSValueList]
+g: style.getPropertyValue(-webkit-transition-timing-function) : ease
+g: style.getPropertyCSSValue(-webkit-transition-timing-function) : [object CSSValueList]
+g: style.getPropertyValue(-webkit-user-drag) : auto
+g: style.getPropertyCSSValue(-webkit-user-drag) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-user-modify) : read-only
+g: style.getPropertyCSSValue(-webkit-user-modify) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-user-select) : text
+g: style.getPropertyCSSValue(-webkit-user-select) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-writing-mode) : horizontal-tb
+g: style.getPropertyCSSValue(-webkit-writing-mode) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(clip-path) : none
+g: style.getPropertyCSSValue(clip-path) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(clip-rule) : nonzero
+g: style.getPropertyCSSValue(clip-rule) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(mask) : none
+g: style.getPropertyCSSValue(mask) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(filter) : none
+g: style.getPropertyCSSValue(filter) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(flood-color) : rgb(0, 0, 0)
+g: style.getPropertyCSSValue(flood-color) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(flood-opacity) : 1
+g: style.getPropertyCSSValue(flood-opacity) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(lighting-color) : rgb(255, 255, 255)
+g: style.getPropertyCSSValue(lighting-color) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(stop-color) : rgb(0, 0, 0)
+g: style.getPropertyCSSValue(stop-color) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(stop-opacity) : 1
+g: style.getPropertyCSSValue(stop-opacity) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(color-interpolation) : srgb
+g: style.getPropertyCSSValue(color-interpolation) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(color-interpolation-filters) : linearrgb
+g: style.getPropertyCSSValue(color-interpolation-filters) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(color-rendering) : auto
+g: style.getPropertyCSSValue(color-rendering) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(fill) : rgb(0, 0, 0)
+g: style.getPropertyCSSValue(fill) : [object SVGPaint]
+g: style.getPropertyValue(fill-opacity) : 1
+g: style.getPropertyCSSValue(fill-opacity) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(fill-rule) : nonzero
+g: style.getPropertyCSSValue(fill-rule) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(marker-end) : none
+g: style.getPropertyCSSValue(marker-end) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(marker-mid) : none
+g: style.getPropertyCSSValue(marker-mid) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(marker-start) : none
+g: style.getPropertyCSSValue(marker-start) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(shape-rendering) : auto
+g: style.getPropertyCSSValue(shape-rendering) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(stroke) : rgb(255, 165, 0)
+g: style.getPropertyCSSValue(stroke) : [object SVGPaint]
+g: style.getPropertyValue(stroke-dasharray) : none
+g: style.getPropertyCSSValue(stroke-dasharray) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(stroke-dashoffset) : 0px
+g: style.getPropertyCSSValue(stroke-dashoffset) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(stroke-linecap) : butt
+g: style.getPropertyCSSValue(stroke-linecap) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(stroke-linejoin) : miter
+g: style.getPropertyCSSValue(stroke-linejoin) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(stroke-miterlimit) : 4
+g: style.getPropertyCSSValue(stroke-miterlimit) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(stroke-opacity) : 1
+g: style.getPropertyCSSValue(stroke-opacity) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(stroke-width) : 2px
+g: style.getPropertyCSSValue(stroke-width) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(alignment-baseline) : auto
+g: style.getPropertyCSSValue(alignment-baseline) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(baseline-shift) : baseline
+g: style.getPropertyCSSValue(baseline-shift) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(dominant-baseline) : auto
+g: style.getPropertyCSSValue(dominant-baseline) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(kerning) : 0
+g: style.getPropertyCSSValue(kerning) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(text-anchor) : start
+g: style.getPropertyCSSValue(text-anchor) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(writing-mode) : lr-tb
+g: style.getPropertyCSSValue(writing-mode) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(glyph-orientation-horizontal) : 0deg
+g: style.getPropertyCSSValue(glyph-orientation-horizontal) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(glyph-orientation-vertical) : auto
+g: style.getPropertyCSSValue(glyph-orientation-vertical) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-svg-shadow) : none
+g: style.getPropertyCSSValue(-webkit-svg-shadow) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(vector-effect) : none
+g: style.getPropertyCSSValue(vector-effect) : [object CSSPrimitiveValue]
+
</ins></span></pre>
</div>
</div>

</body>
</html>