summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/html/syntax/speculative-parsing/generated
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 00:47:55 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 00:47:55 +0000
commit26a029d407be480d791972afb5975cf62c9360a6 (patch)
treef435a8308119effd964b339f76abb83a57c29483 /testing/web-platform/tests/html/syntax/speculative-parsing/generated
parentInitial commit. (diff)
downloadfirefox-26a029d407be480d791972afb5975cf62c9360a6.tar.xz
firefox-26a029d407be480d791972afb5975cf62c9360a6.zip
Adding upstream version 124.0.1.upstream/124.0.1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/web-platform/tests/html/syntax/speculative-parsing/generated')
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/base-href-script-src.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/image-src.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/img-data-src.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/img-src-crossorigin.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/img-src-loading-lazy.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/img-src-referrerpolicy-no-referrer.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/img-src.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/img-srcset.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-no-rel.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-alternate-stylesheet.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-preload-as-font-crossorigin.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-preload-as-image.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-preload-as-script.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-preload-as-style.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-crossorigin.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-disabled.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-integrity.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-nomatch-media.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-referrerpolicy-no-referrer.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-type-text-css.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-unsupported-type.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/math-font-face-script-src.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/math-font-script-src.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/math-script-src.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/meta-charset-script-src.tentative.sub.html35
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/meta-csp-img-src-asterisk.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/meta-csp-img-src-none.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/meta-referrer-no-referrer-img-src.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/meta-viewport-link-stylesheet-media.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/nested-template-shadowrootmode-1.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/nested-template-shadowrootmode-2.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/picture-source-br-img.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/picture-source-no-img.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/picture-source-nomatch-media.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/picture-source-unsupported-type.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-async.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-crossorigin.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-defer.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-integrity.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-module.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-nomodule.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-referrerpolicy-no-referrer.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-type-application-ecmascript.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-unsupported-type.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/svg-image-href.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/svg-image-src.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/svg-image-xlinkhref.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/svg-script-href.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/svg-script-src.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/svg-script-xlinkhref.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/template-img-src.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/template-link-stylesheet.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/template-script-src.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/template-shadowrootmode-img-src.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/template-shadowrootmode-link-stylesheet.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/template-shadowrootmode-script-src.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/video-poster.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/xmp-script-src.tentative.sub.html25
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/base-href-script-src.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/image-src.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/img-data-src.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/img-src-crossorigin.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/img-src-loading-lazy.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/img-src-referrerpolicy-no-referrer.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/img-src.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/img-srcset.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-no-rel.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-alternate-stylesheet.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-preload-as-font-crossorigin.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-preload-as-image.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-preload-as-script.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-preload-as-style.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-crossorigin.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-disabled.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-integrity.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-nomatch-media.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-referrerpolicy-no-referrer.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-type-text-css.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-unsupported-type.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/math-font-face-script-src.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/math-font-script-src.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/math-script-src.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/meta-charset-script-src.tentative.html31
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/meta-csp-img-src-asterisk.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/meta-csp-img-src-none.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/meta-referrer-no-referrer-img-src.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/meta-viewport-link-stylesheet-media.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/nested-template-shadowrootmode-1.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/nested-template-shadowrootmode-2.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/picture-source-br-img.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/picture-source-no-img.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/picture-source-nomatch-media.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/picture-source-unsupported-type.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/base-href-script-src-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/image-src-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/img-data-src-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/img-src-crossorigin-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/img-src-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/img-src-loading-lazy-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/img-src-referrerpolicy-no-referrer-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/img-srcset-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-no-rel-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-alternate-stylesheet-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-preload-as-font-crossorigin-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-preload-as-image-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-preload-as-script-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-preload-as-style-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-crossorigin-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-disabled-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-integrity-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-nomatch-media-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-referrerpolicy-no-referrer-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-type-text-css-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-unsupported-type-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/math-font-face-script-src-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/math-font-script-src-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/math-script-src-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/meta-charset-script-src-framed.sub.html22
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/meta-csp-img-src-asterisk-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/meta-csp-img-src-none-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/meta-referrer-no-referrer-img-src-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/meta-viewport-link-stylesheet-media-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/nested-template-shadowrootmode-1-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/nested-template-shadowrootmode-2-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/picture-source-br-img-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/picture-source-no-img-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/picture-source-nomatch-media-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/picture-source-unsupported-type-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-async-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-crossorigin-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-defer-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-integrity-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-module-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-nomodule-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-referrerpolicy-no-referrer-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-type-application-ecmascript-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-unsupported-type-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/svg-image-href-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/svg-image-src-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/svg-image-xlinkhref-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/svg-script-href-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/svg-script-src-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/svg-script-xlinkhref-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/template-img-src-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/template-link-stylesheet-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/template-script-src-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/template-shadowrootmode-img-src-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/template-shadowrootmode-link-stylesheet-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/template-shadowrootmode-script-src-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/video-poster-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/xmp-script-src-framed.sub.html12
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-async.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-crossorigin.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-defer.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-integrity.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-module.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-nomodule.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-referrerpolicy-no-referrer.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-type-application-ecmascript.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-unsupported-type.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/svg-image-href.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/svg-image-src.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/svg-image-xlinkhref.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/svg-script-href.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/svg-script-src.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/svg-script-xlinkhref.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/template-img-src.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/template-link-stylesheet.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/template-script-src.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/template-shadowrootmode-img-src.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/template-shadowrootmode-link-stylesheet.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/template-shadowrootmode-script-src.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/video-poster.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/xmp-script-src.tentative.html21
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/base-href-script-src-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/image-src-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/img-data-src-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/img-src-crossorigin-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/img-src-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/img-src-referrerpolicy-no-referrer-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/img-srcset-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-no-rel-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-alternate-stylesheet-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-preload-as-font-crossorigin-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-preload-as-image-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-preload-as-script-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-preload-as-style-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-crossorigin-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-disabled-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-integrity-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-nomatch-media-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-referrerpolicy-no-referrer-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-type-text-css-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-unsupported-type-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/math-font-face-script-src-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/math-font-script-src-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/math-script-src-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/meta-charset-script-src-nonspeculative.sub.html20
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/meta-csp-img-src-asterisk-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/meta-csp-img-src-none-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/meta-referrer-no-referrer-img-src-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/meta-viewport-link-stylesheet-media-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/nested-template-shadowrootmode-1-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/nested-template-shadowrootmode-2-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/picture-source-br-img-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/picture-source-no-img-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/picture-source-nomatch-media-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/picture-source-unsupported-type-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-async-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-crossorigin-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-defer-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-integrity-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-module-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-nomodule-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-referrerpolicy-no-referrer-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-type-application-ecmascript-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-unsupported-type-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/svg-image-href-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/svg-image-src-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/svg-image-xlinkhref-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/svg-script-href-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/svg-script-src-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/svg-script-xlinkhref-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/template-img-src-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/template-link-stylesheet-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/template-script-src-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/template-shadowrootmode-img-src-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/template-shadowrootmode-link-stylesheet-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/template-shadowrootmode-script-src-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/video-poster-nonspeculative.sub.html10
-rw-r--r--testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/xmp-script-src-nonspeculative.sub.html10
239 files changed, 4110 insertions, 0 deletions
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/base-href-script-src.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/base-href-script-src.tentative.sub.html
new file mode 100644
index 0000000000..23d2777c63
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/base-href-script-src.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): base-href-script-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'base-href-script-src', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <base href=//{{domains[www1]}}:{{ports[http][0]}}><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;"><\/script>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/image-src.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/image-src.tentative.sub.html
new file mode 100644
index 0000000000..b026985011
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/image-src.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): image-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'image-src', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <image src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;">
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/img-data-src.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/img-data-src.tentative.sub.html
new file mode 100644
index 0000000000..21c14e382c
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/img-data-src.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): img-data-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'img-data-src', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <img data-src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;">
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/img-src-crossorigin.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/img-src-crossorigin.tentative.sub.html
new file mode 100644
index 0000000000..8d038471c8
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/img-src-crossorigin.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): img-src-crossorigin</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'img-src-crossorigin', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <img src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;" crossorigin>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/img-src-loading-lazy.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/img-src-loading-lazy.tentative.sub.html
new file mode 100644
index 0000000000..a1b1c92af8
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/img-src-loading-lazy.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): img-src-loading-lazy</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'img-src-loading-lazy', false))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <img src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;" loading=lazy>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/img-src-referrerpolicy-no-referrer.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/img-src-referrerpolicy-no-referrer.tentative.sub.html
new file mode 100644
index 0000000000..c26b933be8
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/img-src-referrerpolicy-no-referrer.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): img-src-referrerpolicy-no-referrer</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'img-src-referrerpolicy-no-referrer', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <img src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;" referrerpolicy=no-referrer>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/img-src.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/img-src.tentative.sub.html
new file mode 100644
index 0000000000..b4d16da8e9
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/img-src.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): img-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'img-src', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <img src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;">
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/img-srcset.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/img-srcset.tentative.sub.html
new file mode 100644
index 0000000000..b08d597a82
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/img-srcset.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): img-srcset</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'img-srcset', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <img srcset="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;">
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-no-rel.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-no-rel.tentative.sub.html
new file mode 100644
index 0000000000..260f7a53a2
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-no-rel.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): link-no-rel</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'link-no-rel', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <link href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;">
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-alternate-stylesheet.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-alternate-stylesheet.tentative.sub.html
new file mode 100644
index 0000000000..0b82352e3b
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-alternate-stylesheet.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): link-rel-alternate-stylesheet</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'link-rel-alternate-stylesheet', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <link rel="alternate stylesheet" href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;">
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-preload-as-font-crossorigin.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-preload-as-font-crossorigin.tentative.sub.html
new file mode 100644
index 0000000000..2ae82c066d
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-preload-as-font-crossorigin.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): link-rel-preload-as-font-crossorigin</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'link-rel-preload-as-font-crossorigin', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <link rel=preload as=font href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;" crossorigin>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-preload-as-image.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-preload-as-image.tentative.sub.html
new file mode 100644
index 0000000000..098e08f5d1
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-preload-as-image.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): link-rel-preload-as-image</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'link-rel-preload-as-image', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <link rel=preload as=image href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;">
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-preload-as-script.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-preload-as-script.tentative.sub.html
new file mode 100644
index 0000000000..bfa48f0e79
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-preload-as-script.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): link-rel-preload-as-script</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'link-rel-preload-as-script', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <link rel=preload as=script href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;">
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-preload-as-style.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-preload-as-style.tentative.sub.html
new file mode 100644
index 0000000000..75e5a9de6b
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-preload-as-style.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): link-rel-preload-as-style</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'link-rel-preload-as-style', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <link rel=preload as=style href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;">
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-crossorigin.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-crossorigin.tentative.sub.html
new file mode 100644
index 0000000000..66ac2e4e44
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-crossorigin.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): link-rel-stylesheet-crossorigin</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'link-rel-stylesheet-crossorigin', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;" crossorigin>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-disabled.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-disabled.tentative.sub.html
new file mode 100644
index 0000000000..58dbfe6aee
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-disabled.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): link-rel-stylesheet-disabled</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'link-rel-stylesheet-disabled', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <link rel="stylesheet" href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;" disabled>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-integrity.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-integrity.tentative.sub.html
new file mode 100644
index 0000000000..35369c3f53
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-integrity.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): link-rel-stylesheet-integrity</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'link-rel-stylesheet-integrity', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;" integrity="sha384-OLBgp1GsljhM2TJ+sbHjaiH9txEUvgdDTAzHv2P24donTt6/529l+9Ua0vFImLlb">
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-nomatch-media.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-nomatch-media.tentative.sub.html
new file mode 100644
index 0000000000..74cf92bf1b
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-nomatch-media.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): link-rel-stylesheet-nomatch-media</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'link-rel-stylesheet-nomatch-media', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;" media="not all">
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-referrerpolicy-no-referrer.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-referrerpolicy-no-referrer.tentative.sub.html
new file mode 100644
index 0000000000..f25a60f7da
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-referrerpolicy-no-referrer.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): link-rel-stylesheet-referrerpolicy-no-referrer</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'link-rel-stylesheet-referrerpolicy-no-referrer', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;" referrerpolicy=no-referrer>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-type-text-css.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-type-text-css.tentative.sub.html
new file mode 100644
index 0000000000..c5dcfc4a61
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-type-text-css.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): link-rel-stylesheet-type-text-css</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'link-rel-stylesheet-type-text-css', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;" type=text/css>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-unsupported-type.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-unsupported-type.tentative.sub.html
new file mode 100644
index 0000000000..ed441e7eae
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet-unsupported-type.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): link-rel-stylesheet-unsupported-type</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'link-rel-stylesheet-unsupported-type', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;" type=text/plain>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet.tentative.sub.html
new file mode 100644
index 0000000000..de6df7e457
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/link-rel-stylesheet.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): link-rel-stylesheet</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'link-rel-stylesheet', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;">
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/math-font-face-script-src.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/math-font-face-script-src.tentative.sub.html
new file mode 100644
index 0000000000..62b5bffaa2
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/math-font-face-script-src.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): math-font-face-script-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'math-font-face-script-src', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <math><font face><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;"><\/script></font></math>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/math-font-script-src.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/math-font-script-src.tentative.sub.html
new file mode 100644
index 0000000000..4fd7ea8ff6
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/math-font-script-src.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): math-font-script-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'math-font-script-src', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <math><font><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;"><\/script></font></math>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/math-script-src.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/math-script-src.tentative.sub.html
new file mode 100644
index 0000000000..00876cae14
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/math-script-src.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): math-script-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'math-script-src', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <math><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;"><\/script></math>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/meta-charset-script-src.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/meta-charset-script-src.tentative.sub.html
new file mode 100644
index 0000000000..8b5072a415
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/meta-charset-script-src.tentative.sub.html
@@ -0,0 +1,35 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<!-- no meta charset -->
+<!-- (padding to exceed 1024 bytes processed by the character encoding scanner) -->
+<!-- -->
+<!-- -->
+<!-- -->
+<!-- -->
+<!-- -->
+<!-- -->
+<!-- -->
+<!-- -->
+<!-- -->
+<title>Speculative parsing, document.write(): meta-charset-script-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'meta-charset-script-src', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <meta\ charset=windows-1254><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;"><\/script>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/meta-csp-img-src-asterisk.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/meta-csp-img-src-asterisk.tentative.sub.html
new file mode 100644
index 0000000000..2d9f8aeb1d
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/meta-csp-img-src-asterisk.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): meta-csp-img-src-asterisk</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'meta-csp-img-src-asterisk', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-inline'; img-src *"><img src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;">
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/meta-csp-img-src-none.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/meta-csp-img-src-none.tentative.sub.html
new file mode 100644
index 0000000000..0266ae72d5
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/meta-csp-img-src-none.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): meta-csp-img-src-none</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'meta-csp-img-src-none', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-inline'; img-src 'none'"><img src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;">
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/meta-referrer-no-referrer-img-src.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/meta-referrer-no-referrer-img-src.tentative.sub.html
new file mode 100644
index 0000000000..b0d0b910e2
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/meta-referrer-no-referrer-img-src.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): meta-referrer-no-referrer-img-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'meta-referrer-no-referrer-img-src', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <meta name=referrer content=no-referrer><img src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;">
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/meta-viewport-link-stylesheet-media.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/meta-viewport-link-stylesheet-media.tentative.sub.html
new file mode 100644
index 0000000000..b7ab5ff97a
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/meta-viewport-link-stylesheet-media.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): meta-viewport-link-stylesheet-media</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'meta-viewport-link-stylesheet-media', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <meta name=viewport content="width=400, initial-scale=1"><link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;" media="(min-width: 401px)">
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/nested-template-shadowrootmode-1.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/nested-template-shadowrootmode-1.tentative.sub.html
new file mode 100644
index 0000000000..c6006ebc0d
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/nested-template-shadowrootmode-1.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): nested-template-shadowrootmode-1</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'nested-template-shadowrootmode-1', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <template><div><template shadowrootmode="closed"><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;"><\/script></template></div></template>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/nested-template-shadowrootmode-2.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/nested-template-shadowrootmode-2.tentative.sub.html
new file mode 100644
index 0000000000..282b0bb555
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/nested-template-shadowrootmode-2.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): nested-template-shadowrootmode-2</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'nested-template-shadowrootmode-2', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <div><template shadowrootmode="closed"><template><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;"><\/script></template></template></div>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/picture-source-br-img.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/picture-source-br-img.tentative.sub.html
new file mode 100644
index 0000000000..914dfb83c9
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/picture-source-br-img.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): picture-source-br-img</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'picture-source-br-img', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <picture><source srcset="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;"><br><img></picture>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/picture-source-no-img.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/picture-source-no-img.tentative.sub.html
new file mode 100644
index 0000000000..6ca192edac
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/picture-source-no-img.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): picture-source-no-img</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'picture-source-no-img', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <picture><source srcset="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;"></picture>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/picture-source-nomatch-media.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/picture-source-nomatch-media.tentative.sub.html
new file mode 100644
index 0000000000..d48d3104f2
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/picture-source-nomatch-media.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): picture-source-nomatch-media</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'picture-source-nomatch-media', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <picture><source srcset="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;" media="not all"><img></picture>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/picture-source-unsupported-type.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/picture-source-unsupported-type.tentative.sub.html
new file mode 100644
index 0000000000..e387d51bab
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/picture-source-unsupported-type.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): picture-source-unsupported-type</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'picture-source-unsupported-type', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <picture><source srcset="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;" type=text/plain><img></picture>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-async.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-async.tentative.sub.html
new file mode 100644
index 0000000000..f4b42c484e
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-async.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): script-src-async</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'script-src-async', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;" async><\/script>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-crossorigin.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-crossorigin.tentative.sub.html
new file mode 100644
index 0000000000..b95f5502ef
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-crossorigin.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): script-src-crossorigin</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'script-src-crossorigin', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;" crossorigin><\/script>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-defer.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-defer.tentative.sub.html
new file mode 100644
index 0000000000..5cf8e15c67
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-defer.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): script-src-defer</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'script-src-defer', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;" defer><\/script>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-integrity.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-integrity.tentative.sub.html
new file mode 100644
index 0000000000..6f66636d76
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-integrity.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): script-src-integrity</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'script-src-integrity', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;" integrity="sha384-OLBgp1GsljhM2TJ+sbHjaiH9txEUvgdDTAzHv2P24donTt6/529l+9Ua0vFImLlb"><\/script>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-module.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-module.tentative.sub.html
new file mode 100644
index 0000000000..229b2b88c4
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-module.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): script-src-module</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'script-src-module', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;" type=module><\/script>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-nomodule.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-nomodule.tentative.sub.html
new file mode 100644
index 0000000000..3f61dba8d4
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-nomodule.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): script-src-nomodule</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'script-src-nomodule', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;" nomodule><\/script>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-referrerpolicy-no-referrer.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-referrerpolicy-no-referrer.tentative.sub.html
new file mode 100644
index 0000000000..ea67a33a22
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-referrerpolicy-no-referrer.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): script-src-referrerpolicy-no-referrer</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'script-src-referrerpolicy-no-referrer', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;" referrerpolicy=no-referrer><\/script>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-type-application-ecmascript.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-type-application-ecmascript.tentative.sub.html
new file mode 100644
index 0000000000..000843abaa
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-type-application-ecmascript.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): script-src-type-application-ecmascript</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'script-src-type-application-ecmascript', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;" type=application/ecmascript><\/script>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-unsupported-type.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-unsupported-type.tentative.sub.html
new file mode 100644
index 0000000000..1eaa56494d
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src-unsupported-type.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): script-src-unsupported-type</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'script-src-unsupported-type', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;" type=text/plain><\/script>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src.tentative.sub.html
new file mode 100644
index 0000000000..4339e82360
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/script-src.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): script-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'script-src', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;"><\/script>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/svg-image-href.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/svg-image-href.tentative.sub.html
new file mode 100644
index 0000000000..1f7974c0dd
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/svg-image-href.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): svg-image-href</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'svg-image-href', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <svg><image href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;"></image></svg>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/svg-image-src.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/svg-image-src.tentative.sub.html
new file mode 100644
index 0000000000..50b6320b68
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/svg-image-src.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): svg-image-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'svg-image-src', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <svg><image src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;"></image></svg>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/svg-image-xlinkhref.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/svg-image-xlinkhref.tentative.sub.html
new file mode 100644
index 0000000000..7d8a0f0357
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/svg-image-xlinkhref.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): svg-image-xlinkhref</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'svg-image-xlinkhref', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <svg><image xlink:href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;"></image></svg>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/svg-script-href.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/svg-script-href.tentative.sub.html
new file mode 100644
index 0000000000..13b6cda989
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/svg-script-href.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): svg-script-href</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'svg-script-href', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <svg><script href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;"><\/script></svg>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/svg-script-src.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/svg-script-src.tentative.sub.html
new file mode 100644
index 0000000000..ea37cc74a4
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/svg-script-src.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): svg-script-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'svg-script-src', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <svg><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;"><\/script></svg>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/svg-script-xlinkhref.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/svg-script-xlinkhref.tentative.sub.html
new file mode 100644
index 0000000000..df0f28ec47
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/svg-script-xlinkhref.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): svg-script-xlinkhref</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'svg-script-xlinkhref', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <svg><script xlink:href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;"><\/script></svg>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/template-img-src.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/template-img-src.tentative.sub.html
new file mode 100644
index 0000000000..60928c10e9
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/template-img-src.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): template-img-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'template-img-src', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <template><img src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;"></template>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/template-link-stylesheet.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/template-link-stylesheet.tentative.sub.html
new file mode 100644
index 0000000000..590975e370
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/template-link-stylesheet.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): template-link-stylesheet</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'template-link-stylesheet', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <template><link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;"></template>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/template-script-src.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/template-script-src.tentative.sub.html
new file mode 100644
index 0000000000..b9e4177d8d
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/template-script-src.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): template-script-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'template-script-src', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <template><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;"><\/script></template>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/template-shadowrootmode-img-src.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/template-shadowrootmode-img-src.tentative.sub.html
new file mode 100644
index 0000000000..d9594f11ae
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/template-shadowrootmode-img-src.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): template-shadowrootmode-img-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'template-shadowrootmode-img-src', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <div><template shadowrootmode="closed"><img src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;"></template></div>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/template-shadowrootmode-link-stylesheet.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/template-shadowrootmode-link-stylesheet.tentative.sub.html
new file mode 100644
index 0000000000..f536059720
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/template-shadowrootmode-link-stylesheet.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): template-shadowrootmode-link-stylesheet</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'template-shadowrootmode-link-stylesheet', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <div><template shadowrootmode="closed"><link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;"></template></div>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/template-shadowrootmode-script-src.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/template-shadowrootmode-script-src.tentative.sub.html
new file mode 100644
index 0000000000..a9b6798da2
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/template-shadowrootmode-script-src.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): template-shadowrootmode-script-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'template-shadowrootmode-script-src', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <div><template shadowrootmode="closed"><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;"><\/script></template></div>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/video-poster.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/video-poster.tentative.sub.html
new file mode 100644
index 0000000000..e14bf19fc9
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/video-poster.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): video-poster</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'video-poster', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <video poster="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;"></video>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/xmp-script-src.tentative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/xmp-script-src.tentative.sub.html
new file mode 100644
index 0000000000..89ecaf1981
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/document-write/xmp-script-src.tentative.sub.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, document.write(): xmp-script-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'xmp-script-src', true))
+ .then(done);
+ document.write(`
+ <script src="/common/slow.py?delay=1500"><\/script>
+ <script>
+ document.write('<plaintext>');
+ <\/script>
+ <\!-- speculative case in document.write -->
+ <xmp><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid=${uuid}&amp;encodingcheck=&Gbreve;"><\/script></xmp>
+ `);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/base-href-script-src.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/base-href-script-src.tentative.html
new file mode 100644
index 0000000000..d37d68333d
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/base-href-script-src.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: base-href-script-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/base-href-script-src-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'base-href-script-src', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/image-src.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/image-src.tentative.html
new file mode 100644
index 0000000000..40929371ca
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/image-src.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: image-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/image-src-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'image-src', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/img-data-src.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/img-data-src.tentative.html
new file mode 100644
index 0000000000..54bed4582a
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/img-data-src.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: img-data-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/img-data-src-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'img-data-src', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/img-src-crossorigin.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/img-src-crossorigin.tentative.html
new file mode 100644
index 0000000000..3b47252140
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/img-src-crossorigin.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: img-src-crossorigin</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/img-src-crossorigin-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'img-src-crossorigin', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/img-src-loading-lazy.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/img-src-loading-lazy.tentative.html
new file mode 100644
index 0000000000..7fd4a1207a
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/img-src-loading-lazy.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: img-src-loading-lazy</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/img-src-loading-lazy-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'img-src-loading-lazy', false))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/img-src-referrerpolicy-no-referrer.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/img-src-referrerpolicy-no-referrer.tentative.html
new file mode 100644
index 0000000000..e41d2c3ef1
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/img-src-referrerpolicy-no-referrer.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: img-src-referrerpolicy-no-referrer</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/img-src-referrerpolicy-no-referrer-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'img-src-referrerpolicy-no-referrer', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/img-src.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/img-src.tentative.html
new file mode 100644
index 0000000000..fda270a9f2
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/img-src.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: img-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/img-src-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'img-src', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/img-srcset.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/img-srcset.tentative.html
new file mode 100644
index 0000000000..5878e14600
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/img-srcset.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: img-srcset</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/img-srcset-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'img-srcset', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-no-rel.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-no-rel.tentative.html
new file mode 100644
index 0000000000..7b9255175b
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-no-rel.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: link-no-rel</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/link-no-rel-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'link-no-rel', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-alternate-stylesheet.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-alternate-stylesheet.tentative.html
new file mode 100644
index 0000000000..7a8eb2ac53
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-alternate-stylesheet.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: link-rel-alternate-stylesheet</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/link-rel-alternate-stylesheet-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'link-rel-alternate-stylesheet', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-preload-as-font-crossorigin.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-preload-as-font-crossorigin.tentative.html
new file mode 100644
index 0000000000..f679c97c59
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-preload-as-font-crossorigin.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: link-rel-preload-as-font-crossorigin</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/link-rel-preload-as-font-crossorigin-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'link-rel-preload-as-font-crossorigin', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-preload-as-image.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-preload-as-image.tentative.html
new file mode 100644
index 0000000000..adc59b7e09
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-preload-as-image.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: link-rel-preload-as-image</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/link-rel-preload-as-image-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'link-rel-preload-as-image', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-preload-as-script.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-preload-as-script.tentative.html
new file mode 100644
index 0000000000..705b56b9a9
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-preload-as-script.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: link-rel-preload-as-script</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/link-rel-preload-as-script-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'link-rel-preload-as-script', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-preload-as-style.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-preload-as-style.tentative.html
new file mode 100644
index 0000000000..ea0cd3945d
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-preload-as-style.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: link-rel-preload-as-style</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/link-rel-preload-as-style-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'link-rel-preload-as-style', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-crossorigin.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-crossorigin.tentative.html
new file mode 100644
index 0000000000..c227593727
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-crossorigin.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: link-rel-stylesheet-crossorigin</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/link-rel-stylesheet-crossorigin-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'link-rel-stylesheet-crossorigin', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-disabled.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-disabled.tentative.html
new file mode 100644
index 0000000000..5f232aa07a
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-disabled.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: link-rel-stylesheet-disabled</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/link-rel-stylesheet-disabled-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'link-rel-stylesheet-disabled', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-integrity.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-integrity.tentative.html
new file mode 100644
index 0000000000..266fb5b7da
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-integrity.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: link-rel-stylesheet-integrity</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/link-rel-stylesheet-integrity-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'link-rel-stylesheet-integrity', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-nomatch-media.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-nomatch-media.tentative.html
new file mode 100644
index 0000000000..49feea0bb0
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-nomatch-media.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: link-rel-stylesheet-nomatch-media</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/link-rel-stylesheet-nomatch-media-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'link-rel-stylesheet-nomatch-media', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-referrerpolicy-no-referrer.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-referrerpolicy-no-referrer.tentative.html
new file mode 100644
index 0000000000..635f23444f
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-referrerpolicy-no-referrer.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: link-rel-stylesheet-referrerpolicy-no-referrer</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/link-rel-stylesheet-referrerpolicy-no-referrer-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'link-rel-stylesheet-referrerpolicy-no-referrer', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-type-text-css.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-type-text-css.tentative.html
new file mode 100644
index 0000000000..a2af61a95d
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-type-text-css.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: link-rel-stylesheet-type-text-css</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/link-rel-stylesheet-type-text-css-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'link-rel-stylesheet-type-text-css', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-unsupported-type.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-unsupported-type.tentative.html
new file mode 100644
index 0000000000..17fb1722f5
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet-unsupported-type.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: link-rel-stylesheet-unsupported-type</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/link-rel-stylesheet-unsupported-type-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'link-rel-stylesheet-unsupported-type', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet.tentative.html
new file mode 100644
index 0000000000..07e4152c83
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/link-rel-stylesheet.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: link-rel-stylesheet</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/link-rel-stylesheet-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'link-rel-stylesheet', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/math-font-face-script-src.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/math-font-face-script-src.tentative.html
new file mode 100644
index 0000000000..47516bab94
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/math-font-face-script-src.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: math-font-face-script-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/math-font-face-script-src-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'math-font-face-script-src', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/math-font-script-src.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/math-font-script-src.tentative.html
new file mode 100644
index 0000000000..9a99c63df2
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/math-font-script-src.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: math-font-script-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/math-font-script-src-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'math-font-script-src', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/math-script-src.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/math-script-src.tentative.html
new file mode 100644
index 0000000000..54e6d40f18
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/math-script-src.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: math-script-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/math-script-src-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'math-script-src', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/meta-charset-script-src.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/meta-charset-script-src.tentative.html
new file mode 100644
index 0000000000..e8dfaaf614
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/meta-charset-script-src.tentative.html
@@ -0,0 +1,31 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<!-- no meta charset -->
+<!-- (padding to exceed 1024 bytes processed by the character encoding scanner) -->
+<!-- -->
+<!-- -->
+<!-- -->
+<!-- -->
+<!-- -->
+<!-- -->
+<!-- -->
+<!-- -->
+<!-- -->
+<title>Speculative parsing, page load: meta-charset-script-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/meta-charset-script-src-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'meta-charset-script-src', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/meta-csp-img-src-asterisk.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/meta-csp-img-src-asterisk.tentative.html
new file mode 100644
index 0000000000..35d7374f8e
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/meta-csp-img-src-asterisk.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: meta-csp-img-src-asterisk</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/meta-csp-img-src-asterisk-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'meta-csp-img-src-asterisk', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/meta-csp-img-src-none.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/meta-csp-img-src-none.tentative.html
new file mode 100644
index 0000000000..21984fd9e5
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/meta-csp-img-src-none.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: meta-csp-img-src-none</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/meta-csp-img-src-none-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'meta-csp-img-src-none', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/meta-referrer-no-referrer-img-src.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/meta-referrer-no-referrer-img-src.tentative.html
new file mode 100644
index 0000000000..7d03f49e6e
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/meta-referrer-no-referrer-img-src.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: meta-referrer-no-referrer-img-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/meta-referrer-no-referrer-img-src-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'meta-referrer-no-referrer-img-src', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/meta-viewport-link-stylesheet-media.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/meta-viewport-link-stylesheet-media.tentative.html
new file mode 100644
index 0000000000..0ba60c7c04
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/meta-viewport-link-stylesheet-media.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: meta-viewport-link-stylesheet-media</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/meta-viewport-link-stylesheet-media-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'meta-viewport-link-stylesheet-media', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/nested-template-shadowrootmode-1.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/nested-template-shadowrootmode-1.tentative.html
new file mode 100644
index 0000000000..fe61837dcf
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/nested-template-shadowrootmode-1.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: nested-template-shadowrootmode-1</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/nested-template-shadowrootmode-1-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'nested-template-shadowrootmode-1', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/nested-template-shadowrootmode-2.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/nested-template-shadowrootmode-2.tentative.html
new file mode 100644
index 0000000000..7d4732cd18
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/nested-template-shadowrootmode-2.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: nested-template-shadowrootmode-2</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/nested-template-shadowrootmode-2-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'nested-template-shadowrootmode-2', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/picture-source-br-img.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/picture-source-br-img.tentative.html
new file mode 100644
index 0000000000..38acd4707e
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/picture-source-br-img.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: picture-source-br-img</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/picture-source-br-img-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'picture-source-br-img', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/picture-source-no-img.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/picture-source-no-img.tentative.html
new file mode 100644
index 0000000000..a7196c7740
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/picture-source-no-img.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: picture-source-no-img</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/picture-source-no-img-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'picture-source-no-img', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/picture-source-nomatch-media.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/picture-source-nomatch-media.tentative.html
new file mode 100644
index 0000000000..d1d5e2263c
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/picture-source-nomatch-media.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: picture-source-nomatch-media</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/picture-source-nomatch-media-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'picture-source-nomatch-media', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/picture-source-unsupported-type.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/picture-source-unsupported-type.tentative.html
new file mode 100644
index 0000000000..981805569d
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/picture-source-unsupported-type.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: picture-source-unsupported-type</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/picture-source-unsupported-type-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'picture-source-unsupported-type', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/base-href-script-src-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/base-href-script-src-framed.sub.html
new file mode 100644
index 0000000000..c0913c261e
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/base-href-script-src-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): base-href-script-src</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<base href=//{{domains[www1]}}:{{ports[http][0]}}><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/image-src-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/image-src-framed.sub.html
new file mode 100644
index 0000000000..4a335c7b81
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/image-src-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): image-src</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<image src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;">
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/img-data-src-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/img-data-src-framed.sub.html
new file mode 100644
index 0000000000..20df9ba529
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/img-data-src-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): img-data-src</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<img data-src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;">
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/img-src-crossorigin-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/img-src-crossorigin-framed.sub.html
new file mode 100644
index 0000000000..9302abd3d5
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/img-src-crossorigin-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): img-src-crossorigin</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<img src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" crossorigin>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/img-src-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/img-src-framed.sub.html
new file mode 100644
index 0000000000..ba2607e46d
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/img-src-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): img-src</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<img src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;">
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/img-src-loading-lazy-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/img-src-loading-lazy-framed.sub.html
new file mode 100644
index 0000000000..9cc49cf324
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/img-src-loading-lazy-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): img-src-loading-lazy</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<img src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" loading=lazy>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/img-src-referrerpolicy-no-referrer-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/img-src-referrerpolicy-no-referrer-framed.sub.html
new file mode 100644
index 0000000000..7f466d11ba
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/img-src-referrerpolicy-no-referrer-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): img-src-referrerpolicy-no-referrer</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<img src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" referrerpolicy=no-referrer>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/img-srcset-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/img-srcset-framed.sub.html
new file mode 100644
index 0000000000..3c791bb857
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/img-srcset-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): img-srcset</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<img srcset="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;">
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-no-rel-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-no-rel-framed.sub.html
new file mode 100644
index 0000000000..12e79cda04
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-no-rel-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): link-no-rel</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<link href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;">
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-alternate-stylesheet-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-alternate-stylesheet-framed.sub.html
new file mode 100644
index 0000000000..2d4dc3db12
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-alternate-stylesheet-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): link-rel-alternate-stylesheet</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<link rel="alternate stylesheet" href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;">
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-preload-as-font-crossorigin-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-preload-as-font-crossorigin-framed.sub.html
new file mode 100644
index 0000000000..e1ac7d5395
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-preload-as-font-crossorigin-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): link-rel-preload-as-font-crossorigin</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<link rel=preload as=font href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" crossorigin>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-preload-as-image-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-preload-as-image-framed.sub.html
new file mode 100644
index 0000000000..6cc48035d7
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-preload-as-image-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): link-rel-preload-as-image</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<link rel=preload as=image href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;">
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-preload-as-script-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-preload-as-script-framed.sub.html
new file mode 100644
index 0000000000..10d1092ab1
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-preload-as-script-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): link-rel-preload-as-script</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<link rel=preload as=script href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;">
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-preload-as-style-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-preload-as-style-framed.sub.html
new file mode 100644
index 0000000000..e77d4da77b
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-preload-as-style-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): link-rel-preload-as-style</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<link rel=preload as=style href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;">
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-crossorigin-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-crossorigin-framed.sub.html
new file mode 100644
index 0000000000..4dc7917f4b
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-crossorigin-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): link-rel-stylesheet-crossorigin</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" crossorigin>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-disabled-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-disabled-framed.sub.html
new file mode 100644
index 0000000000..ec535addfd
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-disabled-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): link-rel-stylesheet-disabled</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<link rel="stylesheet" href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" disabled>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-framed.sub.html
new file mode 100644
index 0000000000..7b3bf61019
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): link-rel-stylesheet</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;">
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-integrity-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-integrity-framed.sub.html
new file mode 100644
index 0000000000..752077d674
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-integrity-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): link-rel-stylesheet-integrity</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" integrity="sha384-OLBgp1GsljhM2TJ+sbHjaiH9txEUvgdDTAzHv2P24donTt6/529l+9Ua0vFImLlb">
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-nomatch-media-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-nomatch-media-framed.sub.html
new file mode 100644
index 0000000000..8ddb717c60
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-nomatch-media-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): link-rel-stylesheet-nomatch-media</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" media="not all">
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-referrerpolicy-no-referrer-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-referrerpolicy-no-referrer-framed.sub.html
new file mode 100644
index 0000000000..2f149ef438
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-referrerpolicy-no-referrer-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): link-rel-stylesheet-referrerpolicy-no-referrer</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" referrerpolicy=no-referrer>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-type-text-css-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-type-text-css-framed.sub.html
new file mode 100644
index 0000000000..c402422868
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-type-text-css-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): link-rel-stylesheet-type-text-css</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" type=text/css>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-unsupported-type-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-unsupported-type-framed.sub.html
new file mode 100644
index 0000000000..f0c5016081
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/link-rel-stylesheet-unsupported-type-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): link-rel-stylesheet-unsupported-type</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" type=text/plain>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/math-font-face-script-src-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/math-font-face-script-src-framed.sub.html
new file mode 100644
index 0000000000..90e99fb0d9
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/math-font-face-script-src-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): math-font-face-script-src</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<math><font face><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script></font></math>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/math-font-script-src-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/math-font-script-src-framed.sub.html
new file mode 100644
index 0000000000..fc359406ff
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/math-font-script-src-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): math-font-script-src</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<math><font><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script></font></math>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/math-script-src-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/math-script-src-framed.sub.html
new file mode 100644
index 0000000000..71697e6766
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/math-script-src-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): math-script-src</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<math><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script></math>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/meta-charset-script-src-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/meta-charset-script-src-framed.sub.html
new file mode 100644
index 0000000000..001c0c2eea
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/meta-charset-script-src-framed.sub.html
@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<!-- no meta charset -->
+<!-- (padding to exceed 1024 bytes processed by the character encoding scanner) -->
+<!-- -->
+<!-- -->
+<!-- -->
+<!-- -->
+<!-- -->
+<!-- -->
+<!-- -->
+<!-- -->
+<!-- -->
+<title>Speculative parsing, page load (helper file): meta-charset-script-src</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<meta charset=windows-1254><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/meta-csp-img-src-asterisk-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/meta-csp-img-src-asterisk-framed.sub.html
new file mode 100644
index 0000000000..3ac046dd67
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/meta-csp-img-src-asterisk-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): meta-csp-img-src-asterisk</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-inline'; img-src *"><img src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;">
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/meta-csp-img-src-none-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/meta-csp-img-src-none-framed.sub.html
new file mode 100644
index 0000000000..08929d860b
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/meta-csp-img-src-none-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): meta-csp-img-src-none</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-inline'; img-src 'none'"><img src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;">
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/meta-referrer-no-referrer-img-src-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/meta-referrer-no-referrer-img-src-framed.sub.html
new file mode 100644
index 0000000000..a8a344909e
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/meta-referrer-no-referrer-img-src-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): meta-referrer-no-referrer-img-src</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<meta name=referrer content=no-referrer><img src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;">
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/meta-viewport-link-stylesheet-media-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/meta-viewport-link-stylesheet-media-framed.sub.html
new file mode 100644
index 0000000000..8e294e8c46
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/meta-viewport-link-stylesheet-media-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): meta-viewport-link-stylesheet-media</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<meta name=viewport content="width=400, initial-scale=1"><link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" media="(min-width: 401px)">
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/nested-template-shadowrootmode-1-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/nested-template-shadowrootmode-1-framed.sub.html
new file mode 100644
index 0000000000..19e60e9828
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/nested-template-shadowrootmode-1-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): nested-template-shadowrootmode-1</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<template><div><template shadowrootmode="closed"><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script></template></div></template>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/nested-template-shadowrootmode-2-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/nested-template-shadowrootmode-2-framed.sub.html
new file mode 100644
index 0000000000..5cea082c4f
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/nested-template-shadowrootmode-2-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): nested-template-shadowrootmode-2</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<div><template shadowrootmode="closed"><template><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script></template></template></div>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/picture-source-br-img-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/picture-source-br-img-framed.sub.html
new file mode 100644
index 0000000000..aea18d1e04
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/picture-source-br-img-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): picture-source-br-img</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<picture><source srcset="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"><br><img></picture>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/picture-source-no-img-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/picture-source-no-img-framed.sub.html
new file mode 100644
index 0000000000..5367cd4085
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/picture-source-no-img-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): picture-source-no-img</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<picture><source srcset="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></picture>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/picture-source-nomatch-media-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/picture-source-nomatch-media-framed.sub.html
new file mode 100644
index 0000000000..a8e696f901
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/picture-source-nomatch-media-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): picture-source-nomatch-media</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<picture><source srcset="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" media="not all"><img></picture>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/picture-source-unsupported-type-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/picture-source-unsupported-type-framed.sub.html
new file mode 100644
index 0000000000..0ed95368c0
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/picture-source-unsupported-type-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): picture-source-unsupported-type</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<picture><source srcset="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" type=text/plain><img></picture>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-async-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-async-framed.sub.html
new file mode 100644
index 0000000000..5e6cbff21d
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-async-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): script-src-async</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" async></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-crossorigin-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-crossorigin-framed.sub.html
new file mode 100644
index 0000000000..098d07c5e3
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-crossorigin-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): script-src-crossorigin</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" crossorigin></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-defer-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-defer-framed.sub.html
new file mode 100644
index 0000000000..7decc7bc60
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-defer-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): script-src-defer</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" defer></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-framed.sub.html
new file mode 100644
index 0000000000..baab010750
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): script-src</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-integrity-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-integrity-framed.sub.html
new file mode 100644
index 0000000000..7c0ca5e59f
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-integrity-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): script-src-integrity</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" integrity="sha384-OLBgp1GsljhM2TJ+sbHjaiH9txEUvgdDTAzHv2P24donTt6/529l+9Ua0vFImLlb"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-module-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-module-framed.sub.html
new file mode 100644
index 0000000000..5c365229df
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-module-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): script-src-module</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" type=module></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-nomodule-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-nomodule-framed.sub.html
new file mode 100644
index 0000000000..46af7c87e2
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-nomodule-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): script-src-nomodule</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" nomodule></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-referrerpolicy-no-referrer-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-referrerpolicy-no-referrer-framed.sub.html
new file mode 100644
index 0000000000..566d2f67e0
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-referrerpolicy-no-referrer-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): script-src-referrerpolicy-no-referrer</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" referrerpolicy=no-referrer></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-type-application-ecmascript-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-type-application-ecmascript-framed.sub.html
new file mode 100644
index 0000000000..08609b1c12
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-type-application-ecmascript-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): script-src-type-application-ecmascript</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" type=application/ecmascript></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-unsupported-type-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-unsupported-type-framed.sub.html
new file mode 100644
index 0000000000..1f38560ee1
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/script-src-unsupported-type-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): script-src-unsupported-type</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" type=text/plain></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/svg-image-href-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/svg-image-href-framed.sub.html
new file mode 100644
index 0000000000..fc4e531849
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/svg-image-href-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): svg-image-href</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<svg><image href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></image></svg>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/svg-image-src-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/svg-image-src-framed.sub.html
new file mode 100644
index 0000000000..16d97e00eb
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/svg-image-src-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): svg-image-src</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<svg><image src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></image></svg>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/svg-image-xlinkhref-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/svg-image-xlinkhref-framed.sub.html
new file mode 100644
index 0000000000..8e5dd1e8dc
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/svg-image-xlinkhref-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): svg-image-xlinkhref</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<svg><image xlink:href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></image></svg>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/svg-script-href-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/svg-script-href-framed.sub.html
new file mode 100644
index 0000000000..6a208cbc4f
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/svg-script-href-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): svg-script-href</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<svg><script href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script></svg>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/svg-script-src-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/svg-script-src-framed.sub.html
new file mode 100644
index 0000000000..e8c1784c60
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/svg-script-src-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): svg-script-src</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<svg><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script></svg>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/svg-script-xlinkhref-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/svg-script-xlinkhref-framed.sub.html
new file mode 100644
index 0000000000..e634000d01
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/svg-script-xlinkhref-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): svg-script-xlinkhref</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<svg><script xlink:href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script></svg>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/template-img-src-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/template-img-src-framed.sub.html
new file mode 100644
index 0000000000..1f8986c2d1
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/template-img-src-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): template-img-src</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<template><img src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></template>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/template-link-stylesheet-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/template-link-stylesheet-framed.sub.html
new file mode 100644
index 0000000000..cfc2502335
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/template-link-stylesheet-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): template-link-stylesheet</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<template><link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></template>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/template-script-src-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/template-script-src-framed.sub.html
new file mode 100644
index 0000000000..8582d10ece
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/template-script-src-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): template-script-src</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<template><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script></template>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/template-shadowrootmode-img-src-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/template-shadowrootmode-img-src-framed.sub.html
new file mode 100644
index 0000000000..32d0aa9a45
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/template-shadowrootmode-img-src-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): template-shadowrootmode-img-src</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<div><template shadowrootmode="closed"><img src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></template></div>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/template-shadowrootmode-link-stylesheet-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/template-shadowrootmode-link-stylesheet-framed.sub.html
new file mode 100644
index 0000000000..3557749c81
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/template-shadowrootmode-link-stylesheet-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): template-shadowrootmode-link-stylesheet</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<div><template shadowrootmode="closed"><link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></template></div>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/template-shadowrootmode-script-src-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/template-shadowrootmode-script-src-framed.sub.html
new file mode 100644
index 0000000000..ab4ad10df4
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/template-shadowrootmode-script-src-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): template-shadowrootmode-script-src</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<div><template shadowrootmode="closed"><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script></template></div>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/video-poster-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/video-poster-framed.sub.html
new file mode 100644
index 0000000000..ad2c7cef95
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/video-poster-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): video-poster</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<video poster="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></video>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/xmp-script-src-framed.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/xmp-script-src-framed.sub.html
new file mode 100644
index 0000000000..3c5ea9252e
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/resources/xmp-script-src-framed.sub.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load (helper file): xmp-script-src</title>
+<script src="/common/slow.py?delay=1500"></script>
+<script>
+ document.write('<plaintext>');
+</script>
+<!-- speculative case -->
+<xmp><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script></xmp>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-async.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-async.tentative.html
new file mode 100644
index 0000000000..d462508a7e
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-async.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: script-src-async</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/script-src-async-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'script-src-async', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-crossorigin.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-crossorigin.tentative.html
new file mode 100644
index 0000000000..59d3d9e07e
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-crossorigin.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: script-src-crossorigin</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/script-src-crossorigin-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'script-src-crossorigin', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-defer.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-defer.tentative.html
new file mode 100644
index 0000000000..b8bf489890
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-defer.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: script-src-defer</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/script-src-defer-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'script-src-defer', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-integrity.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-integrity.tentative.html
new file mode 100644
index 0000000000..42719e994a
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-integrity.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: script-src-integrity</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/script-src-integrity-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'script-src-integrity', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-module.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-module.tentative.html
new file mode 100644
index 0000000000..606a1ff469
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-module.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: script-src-module</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/script-src-module-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'script-src-module', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-nomodule.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-nomodule.tentative.html
new file mode 100644
index 0000000000..20ca80222e
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-nomodule.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: script-src-nomodule</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/script-src-nomodule-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'script-src-nomodule', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-referrerpolicy-no-referrer.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-referrerpolicy-no-referrer.tentative.html
new file mode 100644
index 0000000000..cf35f5262b
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-referrerpolicy-no-referrer.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: script-src-referrerpolicy-no-referrer</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/script-src-referrerpolicy-no-referrer-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'script-src-referrerpolicy-no-referrer', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-type-application-ecmascript.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-type-application-ecmascript.tentative.html
new file mode 100644
index 0000000000..611afc7085
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-type-application-ecmascript.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: script-src-type-application-ecmascript</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/script-src-type-application-ecmascript-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'script-src-type-application-ecmascript', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-unsupported-type.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-unsupported-type.tentative.html
new file mode 100644
index 0000000000..c7c5b483a4
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src-unsupported-type.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: script-src-unsupported-type</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/script-src-unsupported-type-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'script-src-unsupported-type', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src.tentative.html
new file mode 100644
index 0000000000..1d545ff0e1
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/script-src.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: script-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/script-src-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'script-src', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/svg-image-href.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/svg-image-href.tentative.html
new file mode 100644
index 0000000000..b5e22c1de9
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/svg-image-href.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: svg-image-href</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/svg-image-href-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'svg-image-href', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/svg-image-src.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/svg-image-src.tentative.html
new file mode 100644
index 0000000000..63232fa492
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/svg-image-src.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: svg-image-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/svg-image-src-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'svg-image-src', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/svg-image-xlinkhref.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/svg-image-xlinkhref.tentative.html
new file mode 100644
index 0000000000..9887004bc4
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/svg-image-xlinkhref.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: svg-image-xlinkhref</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/svg-image-xlinkhref-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'svg-image-xlinkhref', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/svg-script-href.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/svg-script-href.tentative.html
new file mode 100644
index 0000000000..54d4e313f9
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/svg-script-href.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: svg-script-href</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/svg-script-href-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'svg-script-href', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/svg-script-src.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/svg-script-src.tentative.html
new file mode 100644
index 0000000000..8b2397e071
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/svg-script-src.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: svg-script-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/svg-script-src-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'svg-script-src', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/svg-script-xlinkhref.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/svg-script-xlinkhref.tentative.html
new file mode 100644
index 0000000000..08b4efc3ee
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/svg-script-xlinkhref.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: svg-script-xlinkhref</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/svg-script-xlinkhref-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'svg-script-xlinkhref', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/template-img-src.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/template-img-src.tentative.html
new file mode 100644
index 0000000000..bd83a9359a
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/template-img-src.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: template-img-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/template-img-src-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'template-img-src', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/template-link-stylesheet.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/template-link-stylesheet.tentative.html
new file mode 100644
index 0000000000..d7718bc23b
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/template-link-stylesheet.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: template-link-stylesheet</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/template-link-stylesheet-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'template-link-stylesheet', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/template-script-src.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/template-script-src.tentative.html
new file mode 100644
index 0000000000..f5c23dddb2
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/template-script-src.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: template-script-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/template-script-src-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'template-script-src', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/template-shadowrootmode-img-src.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/template-shadowrootmode-img-src.tentative.html
new file mode 100644
index 0000000000..96a48dc739
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/template-shadowrootmode-img-src.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: template-shadowrootmode-img-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/template-shadowrootmode-img-src-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'template-shadowrootmode-img-src', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/template-shadowrootmode-link-stylesheet.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/template-shadowrootmode-link-stylesheet.tentative.html
new file mode 100644
index 0000000000..3f08ab3bb7
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/template-shadowrootmode-link-stylesheet.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: template-shadowrootmode-link-stylesheet</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/template-shadowrootmode-link-stylesheet-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'template-shadowrootmode-link-stylesheet', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/template-shadowrootmode-script-src.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/template-shadowrootmode-script-src.tentative.html
new file mode 100644
index 0000000000..6d78fcfff1
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/template-shadowrootmode-script-src.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: template-shadowrootmode-script-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/template-shadowrootmode-script-src-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'template-shadowrootmode-script-src', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/video-poster.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/video-poster.tentative.html
new file mode 100644
index 0000000000..73b9cb50de
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/video-poster.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: video-poster</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/video-poster-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, true)
+ .then(compare_with_nonspeculative(uuid, 'video-poster', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/xmp-script-src.tentative.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/xmp-script-src.tentative.html
new file mode 100644
index 0000000000..cee708ff72
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/page-load/xmp-script-src.tentative.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, page load: xmp-script-src</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/utils.js></script>
+<script src=/html/syntax/speculative-parsing/resources/speculative-parsing-util.js></script>
+<body>
+<script>
+ setup({single_test: true});
+ const uuid = token();
+ const iframe = document.createElement('iframe');
+ iframe.src = `resources/xmp-script-src-framed.sub.html?uuid=${uuid}`;
+ document.body.appendChild(iframe);
+ expect_fetched_onload(uuid, false)
+ .then(compare_with_nonspeculative(uuid, 'xmp-script-src', true))
+ .then(done);
+</script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/base-href-script-src-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/base-href-script-src-nonspeculative.sub.html
new file mode 100644
index 0000000000..e860f0e93d
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/base-href-script-src-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): base-href-script-src</title>
+<!-- non-speculative case -->
+<base href=//{{domains[www1]}}:{{ports[http][0]}}><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/image-src-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/image-src-nonspeculative.sub.html
new file mode 100644
index 0000000000..3d0ec70855
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/image-src-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): image-src</title>
+<!-- non-speculative case -->
+<image src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;">
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/img-data-src-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/img-data-src-nonspeculative.sub.html
new file mode 100644
index 0000000000..f739f59070
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/img-data-src-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): img-data-src</title>
+<!-- non-speculative case -->
+<img data-src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;">
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/img-src-crossorigin-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/img-src-crossorigin-nonspeculative.sub.html
new file mode 100644
index 0000000000..bb7c7d2c84
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/img-src-crossorigin-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): img-src-crossorigin</title>
+<!-- non-speculative case -->
+<img src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" crossorigin>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/img-src-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/img-src-nonspeculative.sub.html
new file mode 100644
index 0000000000..dc27cf837c
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/img-src-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): img-src</title>
+<!-- non-speculative case -->
+<img src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;">
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/img-src-referrerpolicy-no-referrer-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/img-src-referrerpolicy-no-referrer-nonspeculative.sub.html
new file mode 100644
index 0000000000..6fd38fdc0c
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/img-src-referrerpolicy-no-referrer-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): img-src-referrerpolicy-no-referrer</title>
+<!-- non-speculative case -->
+<img src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" referrerpolicy=no-referrer>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/img-srcset-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/img-srcset-nonspeculative.sub.html
new file mode 100644
index 0000000000..3adcae9dce
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/img-srcset-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): img-srcset</title>
+<!-- non-speculative case -->
+<img srcset="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;">
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-no-rel-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-no-rel-nonspeculative.sub.html
new file mode 100644
index 0000000000..50fee5964c
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-no-rel-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): link-no-rel</title>
+<!-- non-speculative case -->
+<link href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;">
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-alternate-stylesheet-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-alternate-stylesheet-nonspeculative.sub.html
new file mode 100644
index 0000000000..cdd3a0cfaa
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-alternate-stylesheet-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): link-rel-alternate-stylesheet</title>
+<!-- non-speculative case -->
+<link rel="alternate stylesheet" href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;">
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-preload-as-font-crossorigin-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-preload-as-font-crossorigin-nonspeculative.sub.html
new file mode 100644
index 0000000000..6329cd0fcb
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-preload-as-font-crossorigin-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): link-rel-preload-as-font-crossorigin</title>
+<!-- non-speculative case -->
+<link rel=preload as=font href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" crossorigin>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-preload-as-image-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-preload-as-image-nonspeculative.sub.html
new file mode 100644
index 0000000000..80258dfa63
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-preload-as-image-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): link-rel-preload-as-image</title>
+<!-- non-speculative case -->
+<link rel=preload as=image href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;">
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-preload-as-script-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-preload-as-script-nonspeculative.sub.html
new file mode 100644
index 0000000000..04fe1b1dc0
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-preload-as-script-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): link-rel-preload-as-script</title>
+<!-- non-speculative case -->
+<link rel=preload as=script href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;">
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-preload-as-style-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-preload-as-style-nonspeculative.sub.html
new file mode 100644
index 0000000000..4cc7ef40bc
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-preload-as-style-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): link-rel-preload-as-style</title>
+<!-- non-speculative case -->
+<link rel=preload as=style href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;">
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-crossorigin-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-crossorigin-nonspeculative.sub.html
new file mode 100644
index 0000000000..81a28c07a3
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-crossorigin-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): link-rel-stylesheet-crossorigin</title>
+<!-- non-speculative case -->
+<link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" crossorigin>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-disabled-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-disabled-nonspeculative.sub.html
new file mode 100644
index 0000000000..5584e7d4fc
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-disabled-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): link-rel-stylesheet-disabled</title>
+<!-- non-speculative case -->
+<link rel="stylesheet" href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" disabled>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-integrity-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-integrity-nonspeculative.sub.html
new file mode 100644
index 0000000000..9e9ae176a5
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-integrity-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): link-rel-stylesheet-integrity</title>
+<!-- non-speculative case -->
+<link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" integrity="sha384-OLBgp1GsljhM2TJ+sbHjaiH9txEUvgdDTAzHv2P24donTt6/529l+9Ua0vFImLlb">
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-nomatch-media-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-nomatch-media-nonspeculative.sub.html
new file mode 100644
index 0000000000..b10375c2c9
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-nomatch-media-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): link-rel-stylesheet-nomatch-media</title>
+<!-- non-speculative case -->
+<link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" media="not all">
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-nonspeculative.sub.html
new file mode 100644
index 0000000000..4aeb803ca3
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): link-rel-stylesheet</title>
+<!-- non-speculative case -->
+<link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;">
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-referrerpolicy-no-referrer-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-referrerpolicy-no-referrer-nonspeculative.sub.html
new file mode 100644
index 0000000000..0c79457bdd
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-referrerpolicy-no-referrer-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): link-rel-stylesheet-referrerpolicy-no-referrer</title>
+<!-- non-speculative case -->
+<link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" referrerpolicy=no-referrer>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-type-text-css-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-type-text-css-nonspeculative.sub.html
new file mode 100644
index 0000000000..c851eee104
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-type-text-css-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): link-rel-stylesheet-type-text-css</title>
+<!-- non-speculative case -->
+<link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" type=text/css>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-unsupported-type-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-unsupported-type-nonspeculative.sub.html
new file mode 100644
index 0000000000..7db5b49cd7
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/link-rel-stylesheet-unsupported-type-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): link-rel-stylesheet-unsupported-type</title>
+<!-- non-speculative case -->
+<link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" type=text/plain>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/math-font-face-script-src-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/math-font-face-script-src-nonspeculative.sub.html
new file mode 100644
index 0000000000..1ea61d5a28
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/math-font-face-script-src-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): math-font-face-script-src</title>
+<!-- non-speculative case -->
+<math><font face><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script></font></math>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/math-font-script-src-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/math-font-script-src-nonspeculative.sub.html
new file mode 100644
index 0000000000..d3d6567a42
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/math-font-script-src-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): math-font-script-src</title>
+<!-- non-speculative case -->
+<math><font><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script></font></math>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/math-script-src-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/math-script-src-nonspeculative.sub.html
new file mode 100644
index 0000000000..7e27036e46
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/math-script-src-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): math-script-src</title>
+<!-- non-speculative case -->
+<math><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script></math>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/meta-charset-script-src-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/meta-charset-script-src-nonspeculative.sub.html
new file mode 100644
index 0000000000..2a47f520ae
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/meta-charset-script-src-nonspeculative.sub.html
@@ -0,0 +1,20 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<!-- no meta charset -->
+<!-- (padding to exceed 1024 bytes processed by the character encoding scanner) -->
+<!-- -->
+<!-- -->
+<!-- -->
+<!-- -->
+<!-- -->
+<!-- -->
+<!-- -->
+<!-- -->
+<!-- -->
+<title>Speculative parsing, non-speculative (helper file): meta-charset-script-src</title>
+<!-- non-speculative case -->
+<!-- no meta charset --><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/meta-csp-img-src-asterisk-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/meta-csp-img-src-asterisk-nonspeculative.sub.html
new file mode 100644
index 0000000000..50954c86c3
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/meta-csp-img-src-asterisk-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): meta-csp-img-src-asterisk</title>
+<!-- non-speculative case -->
+<meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-inline'; img-src *"><img src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;">
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/meta-csp-img-src-none-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/meta-csp-img-src-none-nonspeculative.sub.html
new file mode 100644
index 0000000000..fe651e834e
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/meta-csp-img-src-none-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): meta-csp-img-src-none</title>
+<!-- non-speculative case -->
+<meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-inline'; img-src 'none'"><img src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;">
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/meta-referrer-no-referrer-img-src-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/meta-referrer-no-referrer-img-src-nonspeculative.sub.html
new file mode 100644
index 0000000000..0e7a13ee32
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/meta-referrer-no-referrer-img-src-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): meta-referrer-no-referrer-img-src</title>
+<!-- non-speculative case -->
+<meta name=referrer content=no-referrer><img src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;">
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/meta-viewport-link-stylesheet-media-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/meta-viewport-link-stylesheet-media-nonspeculative.sub.html
new file mode 100644
index 0000000000..cb0f992adb
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/meta-viewport-link-stylesheet-media-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): meta-viewport-link-stylesheet-media</title>
+<!-- non-speculative case -->
+<meta name=viewport content="width=400, initial-scale=1"><link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" media="(min-width: 401px)">
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/nested-template-shadowrootmode-1-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/nested-template-shadowrootmode-1-nonspeculative.sub.html
new file mode 100644
index 0000000000..ec14d9b9c4
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/nested-template-shadowrootmode-1-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): nested-template-shadowrootmode-1</title>
+<!-- non-speculative case -->
+<template><div><template shadowrootmode="closed"><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script></template></div></template>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/nested-template-shadowrootmode-2-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/nested-template-shadowrootmode-2-nonspeculative.sub.html
new file mode 100644
index 0000000000..71231ee70c
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/nested-template-shadowrootmode-2-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): nested-template-shadowrootmode-2</title>
+<!-- non-speculative case -->
+<div><template shadowrootmode="closed"><template><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script></template></template></div>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/picture-source-br-img-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/picture-source-br-img-nonspeculative.sub.html
new file mode 100644
index 0000000000..371600284d
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/picture-source-br-img-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): picture-source-br-img</title>
+<!-- non-speculative case -->
+<picture><source srcset="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"><br><img></picture>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/picture-source-no-img-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/picture-source-no-img-nonspeculative.sub.html
new file mode 100644
index 0000000000..858485acef
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/picture-source-no-img-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): picture-source-no-img</title>
+<!-- non-speculative case -->
+<picture><source srcset="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></picture>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/picture-source-nomatch-media-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/picture-source-nomatch-media-nonspeculative.sub.html
new file mode 100644
index 0000000000..e4dc1444ce
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/picture-source-nomatch-media-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): picture-source-nomatch-media</title>
+<!-- non-speculative case -->
+<picture><source srcset="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" media="not all"><img></picture>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/picture-source-unsupported-type-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/picture-source-unsupported-type-nonspeculative.sub.html
new file mode 100644
index 0000000000..2c7372f1f9
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/picture-source-unsupported-type-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): picture-source-unsupported-type</title>
+<!-- non-speculative case -->
+<picture><source srcset="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" type=text/plain><img></picture>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-async-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-async-nonspeculative.sub.html
new file mode 100644
index 0000000000..cf8acf5fe0
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-async-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): script-src-async</title>
+<!-- non-speculative case -->
+<script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" async></script>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-crossorigin-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-crossorigin-nonspeculative.sub.html
new file mode 100644
index 0000000000..c3e200c0aa
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-crossorigin-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): script-src-crossorigin</title>
+<!-- non-speculative case -->
+<script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" crossorigin></script>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-defer-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-defer-nonspeculative.sub.html
new file mode 100644
index 0000000000..2bda3229e3
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-defer-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): script-src-defer</title>
+<!-- non-speculative case -->
+<script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" defer></script>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-integrity-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-integrity-nonspeculative.sub.html
new file mode 100644
index 0000000000..a52d956e7b
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-integrity-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): script-src-integrity</title>
+<!-- non-speculative case -->
+<script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" integrity="sha384-OLBgp1GsljhM2TJ+sbHjaiH9txEUvgdDTAzHv2P24donTt6/529l+9Ua0vFImLlb"></script>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-module-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-module-nonspeculative.sub.html
new file mode 100644
index 0000000000..7cb2839621
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-module-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): script-src-module</title>
+<!-- non-speculative case -->
+<script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" type=module></script>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-nomodule-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-nomodule-nonspeculative.sub.html
new file mode 100644
index 0000000000..1ffedbb55a
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-nomodule-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): script-src-nomodule</title>
+<!-- non-speculative case -->
+<script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" nomodule></script>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-nonspeculative.sub.html
new file mode 100644
index 0000000000..494f854d5e
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): script-src</title>
+<!-- non-speculative case -->
+<script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-referrerpolicy-no-referrer-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-referrerpolicy-no-referrer-nonspeculative.sub.html
new file mode 100644
index 0000000000..4581eb03ad
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-referrerpolicy-no-referrer-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): script-src-referrerpolicy-no-referrer</title>
+<!-- non-speculative case -->
+<script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" referrerpolicy=no-referrer></script>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-type-application-ecmascript-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-type-application-ecmascript-nonspeculative.sub.html
new file mode 100644
index 0000000000..1746cd2e42
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-type-application-ecmascript-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): script-src-type-application-ecmascript</title>
+<!-- non-speculative case -->
+<script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" type=application/ecmascript></script>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-unsupported-type-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-unsupported-type-nonspeculative.sub.html
new file mode 100644
index 0000000000..94098b5c77
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/script-src-unsupported-type-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): script-src-unsupported-type</title>
+<!-- non-speculative case -->
+<script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;" type=text/plain></script>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/svg-image-href-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/svg-image-href-nonspeculative.sub.html
new file mode 100644
index 0000000000..6c61c3208a
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/svg-image-href-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): svg-image-href</title>
+<!-- non-speculative case -->
+<svg><image href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></image></svg>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/svg-image-src-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/svg-image-src-nonspeculative.sub.html
new file mode 100644
index 0000000000..0aba339a16
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/svg-image-src-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): svg-image-src</title>
+<!-- non-speculative case -->
+<svg><image src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></image></svg>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/svg-image-xlinkhref-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/svg-image-xlinkhref-nonspeculative.sub.html
new file mode 100644
index 0000000000..c4e9e3f8b7
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/svg-image-xlinkhref-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): svg-image-xlinkhref</title>
+<!-- non-speculative case -->
+<svg><image xlink:href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></image></svg>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/svg-script-href-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/svg-script-href-nonspeculative.sub.html
new file mode 100644
index 0000000000..9a28a6cd12
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/svg-script-href-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): svg-script-href</title>
+<!-- non-speculative case -->
+<svg><script href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script></svg>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/svg-script-src-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/svg-script-src-nonspeculative.sub.html
new file mode 100644
index 0000000000..c37091ce3c
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/svg-script-src-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): svg-script-src</title>
+<!-- non-speculative case -->
+<svg><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script></svg>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/svg-script-xlinkhref-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/svg-script-xlinkhref-nonspeculative.sub.html
new file mode 100644
index 0000000000..376fafdcf1
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/svg-script-xlinkhref-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): svg-script-xlinkhref</title>
+<!-- non-speculative case -->
+<svg><script xlink:href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script></svg>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/template-img-src-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/template-img-src-nonspeculative.sub.html
new file mode 100644
index 0000000000..db331fc88b
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/template-img-src-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): template-img-src</title>
+<!-- non-speculative case -->
+<template><img src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></template>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/template-link-stylesheet-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/template-link-stylesheet-nonspeculative.sub.html
new file mode 100644
index 0000000000..cc3072d890
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/template-link-stylesheet-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): template-link-stylesheet</title>
+<!-- non-speculative case -->
+<template><link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></template>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/template-script-src-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/template-script-src-nonspeculative.sub.html
new file mode 100644
index 0000000000..0ec64a0163
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/template-script-src-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): template-script-src</title>
+<!-- non-speculative case -->
+<template><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script></template>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/template-shadowrootmode-img-src-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/template-shadowrootmode-img-src-nonspeculative.sub.html
new file mode 100644
index 0000000000..ec3ca52442
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/template-shadowrootmode-img-src-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): template-shadowrootmode-img-src</title>
+<!-- non-speculative case -->
+<div><template shadowrootmode="closed"><img src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></template></div>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/template-shadowrootmode-link-stylesheet-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/template-shadowrootmode-link-stylesheet-nonspeculative.sub.html
new file mode 100644
index 0000000000..ed813b3fd5
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/template-shadowrootmode-link-stylesheet-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): template-shadowrootmode-link-stylesheet</title>
+<!-- non-speculative case -->
+<div><template shadowrootmode="closed"><link rel=stylesheet href="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></template></div>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/template-shadowrootmode-script-src-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/template-shadowrootmode-script-src-nonspeculative.sub.html
new file mode 100644
index 0000000000..cd401584d8
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/template-shadowrootmode-script-src-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): template-shadowrootmode-script-src</title>
+<!-- non-speculative case -->
+<div><template shadowrootmode="closed"><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script></template></div>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/video-poster-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/video-poster-nonspeculative.sub.html
new file mode 100644
index 0000000000..c233e899cb
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/video-poster-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): video-poster</title>
+<!-- non-speculative case -->
+<video poster="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></video>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>
diff --git a/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/xmp-script-src-nonspeculative.sub.html b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/xmp-script-src-nonspeculative.sub.html
new file mode 100644
index 0000000000..e3a93d441d
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/speculative-parsing/generated/resources/xmp-script-src-nonspeculative.sub.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT. This file has been generated. Source:
+ /html/syntax/speculative-parsing/tools/generate.py
+-->
+<meta charset=utf-8>
+<title>Speculative parsing, non-speculative (helper file): xmp-script-src</title>
+<!-- non-speculative case -->
+<xmp><script src="/html/syntax/speculative-parsing/resources/stash.py?action=put&amp;uuid={{GET[uuid]}}&amp;encodingcheck=&Gbreve;"></script></xmp>
+<!-- block the load event for a bit: -->
+<script src="/common/slow.py?delay=1500"></script>