<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>206389</bug_id>
          
          <creation_ts>2020-01-16 17:23:27 -0800</creation_ts>
          <short_desc>It should be possible to build JavaScriptCore with LLVM Source-based Code Coverage, run the tests and see the coverage data</short_desc>
          <delta_ts>2020-04-03 06:35:33 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>Other</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=209963</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>206833</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Tuomas Karkkainen">tuomas.webkit</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>achristensen</cc>
    
    <cc>ap</cc>
    
    <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>jbedard</cc>
    
    <cc>koivisto</cc>
    
    <cc>krollin</cc>
    
    <cc>rmorisset</cc>
    
    <cc>saam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1607806</commentid>
    <comment_count>0</comment_count>
    <who name="Tuomas Karkkainen">tuomas.webkit</who>
    <bug_when>2020-01-16 17:23:27 -0800</bug_when>
    <thetext>It should be possible to build JavaScriptCore with LLVM Source-based Code Coverage, run the tests and see the coverage data</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1607817</commentid>
    <comment_count>1</comment_count>
      <attachid>387995</attachid>
    <who name="Tuomas Karkkainen">tuomas.webkit</who>
    <bug_when>2020-01-16 17:35:12 -0800</bug_when>
    <thetext>Created attachment 387995
proposed patch

initial proposal for the patch.

start with e.g.:

&gt; Tools/Scripts/set-webkit-configuration --force-optimization-level=O3 --debug --no-asan --coverage

then:

&gt; Tools/Scripts/run-javascriptcore-tests --debug --no-build --coverage

Known limitations:

* CMake build is not supported.
* ASAN and coverage cannot be enabled at the same time. This isn&apos;t an inherent limitation, just a limitation of the current build scripts.

Reference for LLVM Source-based Code Coverage:
https://clang.llvm.org/docs/SourceBasedCodeCoverage.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1607823</commentid>
    <comment_count>2</comment_count>
    <who name="Tuomas Karkkainen">tuomas.webkit</who>
    <bug_when>2020-01-16 18:07:14 -0800</bug_when>
    <thetext>and build with 

&gt; Tools/Scripts/build-jsc

between the two steps above.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1607824</commentid>
    <comment_count>3</comment_count>
      <attachid>388000</attachid>
    <who name="Tuomas Karkkainen">tuomas.webkit</who>
    <bug_when>2020-01-16 18:15:17 -0800</bug_when>
    <thetext>Created attachment 388000
proposed patch

add ASAN_OTHER_LDFLAGS back into Tools/coverage/coverage.xcconfig

oops.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1608256</commentid>
    <comment_count>4</comment_count>
      <attachid>388000</attachid>
    <who name="Robin Morisset">rmorisset</who>
    <bug_when>2020-01-17 15:52:07 -0800</bug_when>
    <thetext>Comment on attachment 388000
proposed patch

I tested it and it worked just fine.
I don&apos;t know perl so I can&apos;t tell if the code is good, but it looks reasonable.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1608344</commentid>
    <comment_count>5</comment_count>
      <attachid>388000</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2020-01-17 18:49:05 -0800</bug_when>
    <thetext>Comment on attachment 388000
proposed patch

View in context: https://bugs.webkit.org/attachment.cgi?id=388000&amp;action=review

r=me

Nice!

&gt; Tools/Scripts/run-javascriptcore-tests:505
&gt; +  $coverageDir = tempdir();
&gt; +  $htmlDir = File::Spec-&gt;catfile($coverageDir, &quot;html_report&quot;);
&gt; +  $profdataPath = File::Spec-&gt;catfile($coverageDir, &quot;jsc_tests.profdata&quot;);
&gt; +  $envVars .=  &quot; LLVM_PROFILE_FILE=&quot; . File::Spec-&gt;catfile($coverageDir, &quot;jsc_test_%9m.profraw&quot;);

nit: 4 spaces (there might be more of these I miss)

&gt; Tools/Scripts/run-javascriptcore-tests:669
&gt; +    unshift @command, &quot;xcrun&quot;, &quot;llvm-cov&quot;, &quot;show&quot;, builtDylibPathForName(&quot;JavaScriptCore&quot;), &quot;--format=html&quot;, &quot;--instr-profile=&quot;.$profdataPath, &quot;--output-dir=&quot;.$htmlDir;

nit: space on the left/right of your &quot;.&quot; concats

&gt; Tools/Scripts/run-javascriptcore-tests:675
&gt; +    print(&quot;Coverage report is in &quot;.$htmlDir.&quot;\n&quot;);

ditto

&gt; Tools/Scripts/run-javascriptcore-tests:680
&gt; +  convertProfrawToProfdata();
&gt; +  generateHtmlFromProfdata();

nit: 4 spaces

&gt; Tools/Scripts/run-javascriptcore-tests:697
&gt; +  processCoverageData();

nit: this should be four spaces

&gt; Tools/Scripts/webkitdirs.pm:909
&gt; +    die &quot;cannot enabled both ASAN and Coverage at this time\n&quot; if $coverageIsEnabled &amp;&amp; $asanIsEnabled;

&quot;enabled&quot; =&gt; &quot;enable&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1608349</commentid>
    <comment_count>6</comment_count>
      <attachid>388000</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2020-01-17 18:52:40 -0800</bug_when>
    <thetext>Comment on attachment 388000
proposed patch

View in context: https://bugs.webkit.org/attachment.cgi?id=388000&amp;action=review

&gt; Tools/Scripts/run-javascriptcore-tests:673
&gt; +    unshift @openCommand, &quot;open&quot;, $htmlDir.&quot;/index.html&quot;;

as you suggested, maybe also print out the name of this file to the output of this script</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1608370</commentid>
    <comment_count>7</comment_count>
      <attachid>388000</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2020-01-17 21:52:47 -0800</bug_when>
    <thetext>Comment on attachment 388000
proposed patch

View in context: https://bugs.webkit.org/attachment.cgi?id=388000&amp;action=review

r- because coverage.xcconfig issues indicate that this hasn&apos;t been tested very thoroughly. Otherwise, looks pretty clean and comprehensive.

&gt; Tools/Scripts/run-javascriptcore-tests:244
&gt; +  --[no-]coverage               Enable (or disable) LLVM Source-based Code Coverage instrumentation for the test run (default: $coverageDefault)

Was this tested against embedded targets, or only macOS?

&gt; Tools/Scripts/run-javascriptcore-tests:656
&gt; +sub convertProfrawToProfdata {

As you can see elsewhere in this file, we use WebKit C++ coding style for Perl too. Please put braces for subs on separate lines.

sub convertProfrawToProfdata
{
    ...
}

&gt; Tools/Scripts/run-javascriptcore-tests:662
&gt; +    unshift @command, &quot;xcrun&quot;, &quot;llvm-profdata&quot;, &quot;merge&quot;, @profrawFiles, &quot;-o&quot;, $profdataPath;

Is it OK to always use the default toolchain? I suspect that we&apos;ll run into an issue sooner or later without --sdk or --toolchain. I&apos;m concerned about embedded targets and about internal builds.

Same comment about every xcrun invocation.

&gt; Tools/Scripts/run-javascriptcore-tests:666
&gt; +sub generateHtmlFromProfdata {

WebKit coding style: generateHTMLFromProfdata.

&gt; Tools/Scripts/run-javascriptcore-tests:674
&gt; +    system(@openCommand);

Opening the result in a browser is not great in automated scenarios, and definitely not part of a function named &quot;generateHtmlFromProfdata&quot;.

&gt; Tools/Scripts/webkitdirs.pm:907
&gt; +    appendToEnvironmentVariableList(&quot;WEBKIT_COVERAGE_BUILD&quot;, &quot;1&quot;) if $coverageIsEnabled;

Why do we need this in the environment?

&gt; Tools/coverage/coverage.xcconfig:1
&gt; +OTHER_C_FLAGS=$(inherited) -fprofile-instr-generate -fcoverage-mapping

OTHER_C_FLAGS is not a thing, the build setting is OTHER_CFLAGS.

But also, I&apos;m unsure that we can override build settings like this, even with $(inherited). Have you checked with -showBuildSettings that this doesn&apos;t change anything other than what&apos;s expected? If this actually works (with both modern and legacy build systems), then we should simplify asan.xcconfig in this way.

&gt; Tools/coverage/coverage.xcconfig:3
&gt; +ASAN_OTHER_LDFLAGS=$(inherited) -fprofile-instr-generate

ASAN?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1608371</commentid>
    <comment_count>8</comment_count>
      <attachid>388000</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2020-01-17 21:54:58 -0800</bug_when>
    <thetext>Comment on attachment 388000
proposed patch

View in context: https://bugs.webkit.org/attachment.cgi?id=388000&amp;action=review

&gt; Tools/coverage/coverage.xcconfig:2
&gt; +OTHER_CPLUSPLUSFLAGS=$(inherited) -fprofile-instr-generate -fcoverage-mapping

Also, we always put semicolons at the end of xcconfig lines, and spaces around &apos;=&apos;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1608988</commentid>
    <comment_count>9</comment_count>
      <attachid>388290</attachid>
    <who name="Tuomas Karkkainen">tuomas.webkit</who>
    <bug_when>2020-01-21 04:35:20 -0800</bug_when>
    <thetext>Created attachment 388290
proposed patch

- fixes Tools/Scripts/set-webkit-configuration --reset
- addresses most of the comments for the first patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1608995</commentid>
    <comment_count>10</comment_count>
    <who name="Tuomas Karkkainen">tuomas.webkit</who>
    <bug_when>2020-01-21 05:24:39 -0800</bug_when>
    <thetext>(In reply to Alexey Proskuryakov from comment #7)
&gt; Comment on attachment 388000 [details]
&gt; proposed patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=388000&amp;action=review
&gt; 
&gt; r- because coverage.xcconfig issues indicate that this hasn&apos;t been tested
&gt; very thoroughly. Otherwise, looks pretty clean and comprehensive.
&gt; 
&gt; &gt; Tools/Scripts/run-javascriptcore-tests:244
&gt; &gt; +  --[no-]coverage               Enable (or disable) LLVM Source-based Code Coverage instrumentation for the test run (default: $coverageDefault)
&gt; 
&gt; Was this tested against embedded targets, or only macOS?

This was tested only on macOS. This currently only supports macOS, so ideally we&apos;d want to disable any other targets.

&gt; &gt; Tools/Scripts/run-javascriptcore-tests:656
&gt; &gt; +sub convertProfrawToProfdata {
&gt; 
&gt; As you can see elsewhere in this file, we use WebKit C++ coding style for
&gt; Perl too. Please put braces for subs on separate lines.

Thanks, fixed!

&gt; sub convertProfrawToProfdata
&gt; {
&gt;     ...
&gt; }
&gt; 
&gt; &gt; Tools/Scripts/run-javascriptcore-tests:662
&gt; &gt; +    unshift @command, &quot;xcrun&quot;, &quot;llvm-profdata&quot;, &quot;merge&quot;, @profrawFiles, &quot;-o&quot;, $profdataPath;
&gt; 
&gt; Is it OK to always use the default toolchain? I suspect that we&apos;ll run into
&gt; an issue sooner or later without --sdk or --toolchain. I&apos;m concerned about
&gt; embedded targets and about internal builds.
&gt; 
&gt; Same comment about every xcrun invocation.
&gt; 
&gt; &gt; Tools/Scripts/run-javascriptcore-tests:666
&gt; &gt; +sub generateHtmlFromProfdata {
&gt; 
&gt; WebKit coding style: generateHTMLFromProfdata.

Fixed.

&gt; &gt; Tools/Scripts/run-javascriptcore-tests:674
&gt; &gt; +    system(@openCommand);
&gt; 
&gt; Opening the result in a browser is not great in automated scenarios, and
&gt; definitely not part of a function named &quot;generateHtmlFromProfdata&quot;.

I fully agree that this is a surprise given the function name.

I switched it to only printing out the report URL.

&gt; &gt; Tools/Scripts/webkitdirs.pm:907
&gt; &gt; +    appendToEnvironmentVariableList(&quot;WEBKIT_COVERAGE_BUILD&quot;, &quot;1&quot;) if $coverageIsEnabled;
&gt; 
&gt; Why do we need this in the environment?

When building with coverage instrumentation, Tools/Scripts/check-for-weak-vtables-and-externals complains about certain symbols. Setting this environment variable makes the errors non-fatal. I added a comment to document this.

&gt; &gt; Tools/coverage/coverage.xcconfig:1
&gt; &gt; +OTHER_C_FLAGS=$(inherited) -fprofile-instr-generate -fcoverage-mapping
&gt; 
&gt; OTHER_C_FLAGS is not a thing, the build setting is OTHER_CFLAGS.
&gt; 

Great catch, fixed.

&gt; But also, I&apos;m unsure that we can override build settings like this, even
&gt; with $(inherited). Have you checked with -showBuildSettings that this
&gt; doesn&apos;t change anything other than what&apos;s expected? If this actually works
&gt; (with both modern and legacy build systems), then we should simplify
&gt; asan.xcconfig in this way.

I&apos;m unsure how to do that.

&gt; &gt; Tools/coverage/coverage.xcconfig:3
&gt; &gt; +ASAN_OTHER_LDFLAGS=$(inherited) -fprofile-instr-generate
&gt; 
&gt; ASAN?

I switched it to OTHER_LDFLAGS.

The reasoning for using the ASAN_ one was because all the .xcconfig files perform &quot;OTHER_LDFLAGS = $(ASAN_OTHER_LDFLAGS);&quot; 

The configurations from coverage.xcconfig seem to be applied after these so OTHER_LDFLAGS works just as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1609029</commentid>
    <comment_count>11</comment_count>
    <who name="Tuomas Karkkainen">tuomas.webkit</who>
    <bug_when>2020-01-21 07:36:34 -0800</bug_when>
    <thetext>(In reply to Alexey Proskuryakov from comment #7)
&gt; Comment on attachment 388000 [details]
&gt; proposed patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=388000&amp;action=review
&gt; 
&gt; 
&gt; &gt; Tools/Scripts/run-javascriptcore-tests:662
&gt; &gt; +    unshift @command, &quot;xcrun&quot;, &quot;llvm-profdata&quot;, &quot;merge&quot;, @profrawFiles, &quot;-o&quot;, $profdataPath;
&gt; 
&gt; Is it OK to always use the default toolchain? I suspect that we&apos;ll run into
&gt; an issue sooner or later without --sdk or --toolchain. I&apos;m concerned about
&gt; embedded targets and about internal builds.
&gt; 
&gt; Same comment about every xcrun invocation.

Should xcrun be replaced with xcrun --sdk macosx ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1609073</commentid>
    <comment_count>12</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2020-01-21 08:53:51 -0800</bug_when>
    <thetext>&gt; Should xcrun be replaced with xcrun --sdk macosx ?

It should really be using xcodeSDK(). Even if this only supports macOS, its SDK can be macosx.internal. Having mismatches between macosx and macosx.internal was causing substantial pain for ASan in the past.

&gt; I&apos;m unsure how to do that.

You can add -showBuildSettings  to xcodebuild invocation (as a local change to webkitdirs.pm) then build with and without the overrides in coverage.xcconfig. I expect that you&apos;ll find the coverage options added, but many others disappear.

&gt; The reasoning for using the ASAN_ one was because all the .xcconfig files perform &quot;OTHER_LDFLAGS = $(ASAN_OTHER_LDFLAGS);&quot; 

Right, ASAN adds options in this way to clearly guarantee that it is not overriding anything. But it&apos;s not OK to reuse the name, and also not OK to only do this for LDFLAGS, and not for C/C++ flags.

Not all targets have it quite the way you quoted, there are multiple that have their own options even for LDFLAGS, and many more for C/C++.

Source/ThirdParty/libwebrtc/Configurations/Base.xcconfig:OTHER_LDFLAGS = $(ASAN_OTHER_LDFLAGS) -fvisibility=default;

Source/WebKit/Configurations/GPUService.xcconfig:OTHER_LDFLAGS = $(inherited) $(OTHER_LDFLAGS_VERSIONED_FRAMEWORK_PATH) $(WK_RELOCATABLE_FRAMEWORKS_LDFLAGS);

Source/WebKit/Configurations/BaseXPCService.xcconfig:OTHER_LDFLAGS = $(inherited) $(OTHER_LDFLAGS_VERSIONED_FRAMEWORK_PATH) $(WK_RELOCATABLE_FRAMEWORKS_LDFLAGS);

etc.

I think that the way it works is that options are inherited for xcconfigs that are marked as inherited in the project, but those added on command line just override the variables. But I may be wrong.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1609484</commentid>
    <comment_count>13</comment_count>
      <attachid>388405</attachid>
    <who name="Tuomas Karkkainen">tuomas.webkit</who>
    <bug_when>2020-01-22 00:33:21 -0800</bug_when>
    <thetext>Created attachment 388405
proposed patch

use `-sdk &lt;sdk&gt;` with xcrun if sdk has been specified.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1609494</commentid>
    <comment_count>14</comment_count>
    <who name="Tuomas Karkkainen">tuomas.webkit</who>
    <bug_when>2020-01-22 02:48:46 -0800</bug_when>
    <thetext>(In reply to Alexey Proskuryakov from comment #12)
&gt; &gt; Should xcrun be replaced with xcrun --sdk macosx ?
&gt; 
&gt; It should really be using xcodeSDK(). Even if this only supports macOS, its
&gt; SDK can be macosx.internal. Having mismatches between macosx and
&gt; macosx.internal was causing substantial pain for ASan in the past.
&gt; 

I made it use xcodeSDK() now. Because run-javascriptcore-tests is slightly different than the other scripts, it actually swallows --sdk &lt;xyz&gt; if --debug is also specified.

This solved one of the problems I was having on a specific machine with mismatched SDKs so thank you for pointing me in the right direction!

&gt; &gt; I&apos;m unsure how to do that.
&gt; 
&gt; You can add -showBuildSettings  to xcodebuild invocation (as a local change
&gt; to webkitdirs.pm) then build with and without the overrides in
&gt; coverage.xcconfig. I expect that you&apos;ll find the coverage options added, but
&gt; many others disappear.
&gt; 
&gt; &gt; The reasoning for using the ASAN_ one was because all the .xcconfig files perform &quot;OTHER_LDFLAGS = $(ASAN_OTHER_LDFLAGS);&quot; 
&gt; 
&gt; Right, ASAN adds options in this way to clearly guarantee that it is not
&gt; overriding anything. But it&apos;s not OK to reuse the name, and also not OK to
&gt; only do this for LDFLAGS, and not for C/C++ flags.
&gt; 
&gt; Not all targets have it quite the way you quoted, there are multiple that
&gt; have their own options even for LDFLAGS, and many more for C/C++.
&gt; 
&gt; Source/ThirdParty/libwebrtc/Configurations/Base.xcconfig:OTHER_LDFLAGS =
&gt; $(ASAN_OTHER_LDFLAGS) -fvisibility=default;
&gt; 
&gt; Source/WebKit/Configurations/GPUService.xcconfig:OTHER_LDFLAGS =
&gt; $(inherited) $(OTHER_LDFLAGS_VERSIONED_FRAMEWORK_PATH)
&gt; $(WK_RELOCATABLE_FRAMEWORKS_LDFLAGS);
&gt; 
&gt; Source/WebKit/Configurations/BaseXPCService.xcconfig:OTHER_LDFLAGS =
&gt; $(inherited) $(OTHER_LDFLAGS_VERSIONED_FRAMEWORK_PATH)
&gt; $(WK_RELOCATABLE_FRAMEWORKS_LDFLAGS);
&gt; 
&gt; etc.
&gt; 
&gt; I think that the way it works is that options are inherited for xcconfigs
&gt; that are marked as inherited in the project, but those added on command line
&gt; just override the variables. But I may be wrong.

I tried this and it seems to work just as it should, e.g.

&gt; OTHER_CFLAGS =  -fvisibility=default

becomes

&gt; OTHER_CFLAGS =  -fvisibility=default -fprofile-instr-generate -fcoverage-mapping


I also tried using LocalOverrides.xcconfig together with coverage and without coverage.

LocalOverrides.xcconfig does not work as I would want it to, that is, it overrides the variables, swallowing the original value completely. E.g. -fvisibility=default disappears from the above.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1609578</commentid>
    <comment_count>15</comment_count>
      <attachid>388427</attachid>
    <who name="Tuomas Karkkainen">tuomas.webkit</who>
    <bug_when>2020-01-22 09:13:11 -0800</bug_when>
    <thetext>Created attachment 388427
proposed patch

adds ChangeLog</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1609624</commentid>
    <comment_count>16</comment_count>
      <attachid>388427</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2020-01-22 11:00:04 -0800</bug_when>
    <thetext>Comment on attachment 388427
proposed patch

View in context: https://bugs.webkit.org/attachment.cgi?id=388427&amp;action=review

r- to fix if/else formatting.

&gt; Tools/ChangeLog:10
&gt; +        * Scripts/run-javascriptcore-tests:
&gt; +        * Scripts/set-webkit-configuration:
&gt; +        * Scripts/webkitdirs.pm:

Can we make `Tools/Scripts/set-webkit-configuration --coverage` take an optional string argument with the path to the coverage directory and write the string path to the Coverage text file instead of &quot;YES&quot;?

If we did that, then run-javascriptcore-tests wouldn&apos;t require any argument to run with coverage (it could just read the directory from the Coverage config file).

This would also simplify the command-line switches for all the scripts to just a single &quot;--coverage[=s]&quot; switch that takes an optional path argument.

&gt; Tools/Scripts/run-javascriptcore-tests:221
&gt; +my $coverageDefault = $coverage ? &quot;coverage enabled&quot; : &quot;coverage disabled&quot;;

Should run-javascfriptcore-tests set its default value based on reading the Coverage config file (determineCoverageIsEnabled() from webkitdirs.pm) if there is no command-line switch?  Seems like we&apos;d want this to &quot;just work&quot;.

&gt; Tools/Scripts/run-javascriptcore-tests:513
&gt; +if ($coverage)
&gt; +{
&gt; +    if ($coverageDir)
&gt; +    {
&gt; +        print &quot;Using output path specified on the command line for coverage data: $coverageDir\n&quot;;
&gt; +    }
&gt; +    else
&gt; +    {
&gt; +        $coverageDir = tempdir();
&gt; +        print &quot;Generating coverage data into $coverageDir\n&quot;;
&gt; +    }

Please correct formatting of braces in if/else blocks (I&apos;m not going to call out every instance of this, so here&apos;s an example):

if ($coverage) {
    if ($coverageDir) {
        print &quot;Using output path specified on the command line for coverage data: $coverageDir\n&quot;;
    } else {
        $coverageDir = tempdir();
        print &quot;Generating coverage data into $coverageDir\n&quot;;
    }

&gt; Tools/coverage/coverage.xcconfig:3
&gt; +OTHER_CFLAGS = $(inherited) -fprofile-instr-generate -fcoverage-mapping;
&gt; +OTHER_CPLUSPLUSFLAGS = $(inherited) -fprofile-instr-generate -fcoverage-mapping;
&gt; +OTHER_LDFLAGS = $(inherited) -fprofile-instr-generate;

To answer Alexey&apos;s question from another patch review:  Yes, $(inherited) should do the correct thing with asan.xcconfig files.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1609640</commentid>
    <comment_count>17</comment_count>
      <attachid>388447</attachid>
    <who name="Tuomas Karkkainen">tuomas.webkit</who>
    <bug_when>2020-01-22 11:27:12 -0800</bug_when>
    <thetext>Created attachment 388447
proposed patch

fixes if/else brace formatting</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1609674</commentid>
    <comment_count>18</comment_count>
      <attachid>388447</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2020-01-22 12:14:20 -0800</bug_when>
    <thetext>Comment on attachment 388447
proposed patch

View in context: https://bugs.webkit.org/attachment.cgi?id=388447&amp;action=review

I guess we should simplify things to stop using ASAN_ variables then!

&gt; Tools/Scripts/webkitdirs.pm:908
&gt; +    # treats errors as non-fatal when it encounters missing symbols related to coverage

Please add a period at the end of the sentence.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1609955</commentid>
    <comment_count>19</comment_count>
      <attachid>388513</attachid>
    <who name="Tuomas Karkkainen">tuomas.webkit</who>
    <bug_when>2020-01-22 21:24:27 -0800</bug_when>
    <thetext>Created attachment 388513
proposed patch

fix grammar.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1610014</commentid>
    <comment_count>20</comment_count>
      <attachid>388513</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-01-23 01:46:45 -0800</bug_when>
    <thetext>Comment on attachment 388513
proposed patch

Clearing flags on attachment: 388513

Committed r254969: &lt;https://trac.webkit.org/changeset/254969&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1610015</commentid>
    <comment_count>21</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-01-23 01:46:47 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1610017</commentid>
    <comment_count>22</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-01-23 01:47:15 -0800</bug_when>
    <thetext>&lt;rdar://problem/58828375&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>387995</attachid>
            <date>2020-01-16 17:35:12 -0800</date>
            <delta_ts>2020-01-16 18:15:17 -0800</delta_ts>
            <desc>proposed patch</desc>
            <filename>webkit_206389.patch</filename>
            <type>text/plain</type>
            <size>9074</size>
            <attacher name="Tuomas Karkkainen">tuomas.webkit</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBiZThl
ZWY1YjY2NS4uZmMzMjA3ZWQ1ODEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9U
b29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMC0wMS0xNiAgVHVvbWFzIEthcmtr
YWluZW4gIDx0dW9tYXMud2Via2l0QGFwcGxlLmNvbT4KKworICAgICAgICBJdCBzaG91bGQgYmUg
cG9zc2libGUgdG8gYnVpbGQgSmF2YVNjcmlwdENvcmUgd2l0aCBMTFZNIFNvdXJjZS1iYXNlZCBD
b2RlIENvdmVyYWdlLCBydW4gdGhlIHRlc3RzIGFuZCBzZWUgdGhlIGNvdmVyYWdlIGRhdGEKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNjM4OQorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2NyaXB0cy9y
dW4tamF2YXNjcmlwdGNvcmUtdGVzdHM6CisgICAgICAgICogU2NyaXB0cy9zZXQtd2Via2l0LWNv
bmZpZ3VyYXRpb246CisgICAgICAgICogU2NyaXB0cy93ZWJraXRkaXJzLnBtOgorICAgICAgICAq
IGNvdmVyYWdlL2NvdmVyYWdlLnhjY29uZmlnOiBBZGRlZC4KKwogMjAyMC0wMS0xNiAgUGhpbGlw
cGUgTm9ybWFuZCAgPHBoaWxuQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dTdHJlYW1lcl1bV1BF
XSBDbGllbnQtc2lkZSB2aWRlbyByZW5kZXJpbmcgc3VwcG9ydApkaWZmIC0tZ2l0IGEvVG9vbHMv
U2NyaXB0cy9ydW4tamF2YXNjcmlwdGNvcmUtdGVzdHMgYi9Ub29scy9TY3JpcHRzL3J1bi1qYXZh
c2NyaXB0Y29yZS10ZXN0cwppbmRleCBjNTQyY2U5YmVjOC4uNzM5YzgyNzA5ZTAgMTAwNzU1Ci0t
LSBhL1Rvb2xzL1NjcmlwdHMvcnVuLWphdmFzY3JpcHRjb3JlLXRlc3RzCisrKyBiL1Rvb2xzL1Nj
cmlwdHMvcnVuLWphdmFzY3JpcHRjb3JlLXRlc3RzCkBAIC0xMDEsNiArMTAxLDcgQEAgbXkgJHZl
cnNpb247CiBteSAkdmVyc2lvbk5hbWU7CiBteSAkc2RrOwogbXkgJGZhaWxGYXN0ID0gMTsKK215
ICRjb3ZlcmFnZSA9IDA7CiBteSAlanNvbkRhdGEgPSAoKTsKIG15ICVyZXBvcnREYXRhID0gKCk7
CiBteSBAdGVzdFJlc3VsdHMgPSAoKTsKQEAgLTIxNiw2ICsyMTcsNyBAQCBteSAkbW96aWxsYVRl
c3RzRGVmYXVsdCA9IGRlZmF1bHRTdHJpbmdGb3JUZXN0U3RhdGUoJHJ1bk1vemlsbGFUZXN0cyk7
CiBteSAkaml0U3RyZXNzVGVzdHNEZWZhdWx0ID0gJHJ1bkpJVFN0cmVzc1Rlc3RzID8gIndpbGwg
cnVuIiA6ICIgd2lsbCBub3QgcnVuIjsKIG15ICRxdWlja01vZGVEZWZhdWx0ID0gJHJ1blF1aWNr
TW9kZSA/ICJzb21lIiA6ICJhbGwiOwogbXkgJGZhaWxGYXN0RGVmYXVsdCA9ICRmYWlsRmFzdCA/
ICJmYWlsIGZhc3QiIDogImRvbid0IGZhaWwgZmFzdCI7CitteSAkY292ZXJhZ2VEZWZhdWx0ID0g
JGNvdmVyYWdlID8gImNvdmVyYWdlIGVuYWJsZWQiIDogImNvdmVyYWdlIGRpc2FibGVkIjsKIG15
ICRjb3B5SlNDRGVmYXVsdCA9ICRjb3B5SlNDID8gImNvcHkiIDogImRvIG5vdCBjb3B5IjsKIG15
ICRmaWx0ZXI7CiBteSAkdXNhZ2UgPSA8PEVPRjsKQEAgLTIzOSw2ICsyNDEsNyBAQCBVc2FnZTog
JHByb2dyYW1OYW1lIFtvcHRpb25zXSBbb3B0aW9ucyB0byBwYXNzIHRvIGJ1aWxkIHN5c3RlbV0K
ICAgLS1bbm8tXWZhaWwtZmFzdCAgICAgICAgICAgICAgU3RvcCB0aGlzIHNjcmlwdCB3aGVuIGEg
dGVzdCBmYW1pbHkgcmVwb3J0cyBhbiBlcnJvciBvciBmYWlsdXJlIChkZWZhdWx0OiAkZmFpbEZh
c3REZWZhdWx0KQogICAtLVtuby1dZm9yY2UtY29sbGVjdENvbnRpbnVvdXNseSBFbmFibGUgdGhl
IGNvbGxlY3RDb250aW51b3VzbHkgbW9kZSBldmVuIGlmIGl0IHdhcyBkaXNhYmxlZCBvbiB0aGlz
IHBsYXRmb3JtLgogICAtLVtuby1dY29weSAgICAgICAgICAgICAgICAgICBDb3B5IChvciBkb24n
dCBjb3B5KSB0aGUgSmF2YVNjcmlwdENvcmUgYnVpbGQgcHJvZHVjdCBiZWZvcmUgdGVzdGluZyAo
ZGVmYXVsdDogJGNvcHlKU0NEZWZhdWx0KQorICAtLVtuby1dY292ZXJhZ2UgICAgICAgICAgICAg
ICBFbmFibGUgKG9yIGRpc2FibGUpIExMVk0gU291cmNlLWJhc2VkIENvZGUgQ292ZXJhZ2UgaW5z
dHJ1bWVudGF0aW9uIGZvciB0aGUgdGVzdCBydW4gKGRlZmF1bHQ6ICRjb3ZlcmFnZURlZmF1bHQp
CiAgIC0tanNvbi1vdXRwdXQ9ICAgICAgICAgICAgICAgIENyZWF0ZSBhIGZpbGUgYXQgc3BlY2lm
aWVkIHBhdGgsIGxpc3RpbmcgZmFpbGVkIHN0cmVzcyB0ZXN0cyBpbiBKU09OIGZvcm1hdC4KICAg
LS10YXJiYWxsICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlIGEgdGFyYmFsbCBvZiB0aGUgYnVu
ZGxlIHByb2R1Y2VkIGJ5IHJ1bm5pbmcgdGhlIEpTQyBzdHJlc3MgdGVzdHMuCiAgIC0tcmVtb3Rl
PSAgICAgICAgICAgICAgICAgICAgIFJ1biB0aGUgSlNDIHN0cmVzcyB0ZXN0cyBvbiB0aGUgc3Bl
Y2lmaWVkIHJlbW90ZSBob3N0LiBJbXBsaWVzIC0tdGFyYmFsbC4KQEAgLTMwNyw2ICszMTAsNyBA
QCBHZXRPcHRpb25zKAogICAgICdmYWlsLWZhc3QhJyA9PiBcJGZhaWxGYXN0LAogICAgICdmb3Jj
ZS1jb2xsZWN0Q29udGludW91c2x5IScgPT4gXCRmb3JjZUNvbGxlY3RDb250aW51b3VzbHksCiAg
ICAgJ2NvcHkhJyA9PiBcJGNvcHlKU0MsCisgICAgJ2NvdmVyYWdlIScgPT4gXCRjb3ZlcmFnZSwK
ICAgICAnanNvbi1vdXRwdXQ9cycgPT4gXCRqc29uRmlsZU5hbWUsCiAgICAgJ3RhcmJhbGwhJyA9
PiBcJGNyZWF0ZVRhcmJhbGwsCiAgICAgJ3JlbW90ZT1zJyA9PiBcJHJlbW90ZUhvc3QsCkBAIC00
OTAsNiArNDk0LDE3IEBAIGlmIChkZWZpbmVkKCRnbWFsbG9jUGF0aCkpIHsKICAgICB9CiB9CiAK
K215ICRjb3ZlcmFnZURpcjsKK215ICRodG1sRGlyOworbXkgJHByb2ZkYXRhUGF0aDsKKworaWYg
KCRjb3ZlcmFnZSkgeworICAkY292ZXJhZ2VEaXIgPSB0ZW1wZGlyKCk7CisgICRodG1sRGlyID0g
RmlsZTo6U3BlYy0+Y2F0ZmlsZSgkY292ZXJhZ2VEaXIsICJodG1sX3JlcG9ydCIpOworICAkcHJv
ZmRhdGFQYXRoID0gRmlsZTo6U3BlYy0+Y2F0ZmlsZSgkY292ZXJhZ2VEaXIsICJqc2NfdGVzdHMu
cHJvZmRhdGEiKTsKKyAgJGVudlZhcnMgLj0gICIgTExWTV9QUk9GSUxFX0ZJTEU9IiAuIEZpbGU6
OlNwZWMtPmNhdGZpbGUoJGNvdmVyYWdlRGlyLCAianNjX3Rlc3RfJTltLnByb2ZyYXciKTsKK30K
KwogbXkgJHByb2R1Y3REaXIgPSBqc2NQcm9kdWN0RGlyKCk7CiAkRU5We0RZTERfRlJBTUVXT1JL
X1BBVEh9ID0gJHByb2R1Y3REaXI7CiAkRU5We0pTQ1RFU1RfdGltZW91dH0gPSAxMjAgdW5sZXNz
ICRFTlZ7SlNDVEVTVF90aW1lb3V0fTsgIyBTZXQgYSAxMjAgc2Vjb25kIHRpbWVvdXQgb24gYWxs
IGpzYyB0ZXN0cyAoaWYgZW52aXJvbm1lbnQgdmFyaWFibGUgbm90IGRlZmluZWQgYWxyZWFkeSku
CkBAIC02MzgsNiArNjUzLDMzIEBAIHN1YiByZXBvcnRUZXN0RmFpbHVyZXMgewogICBwcmludCAi
XG4iOwogfQogCitzdWIgY29udmVydFByb2ZyYXdUb1Byb2ZkYXRhIHsKKyAgICBwcmludCgiQ29u
dmVydGluZyBwcm9mcmF3IGZpbGVzIHRvIHByb2ZkYXRhLlxuIik7CisgICAgbXkgQGNvbW1hbmQ7
CisgICAgb3BlbmRpcihQUk9GUkFXUywgJGNvdmVyYWdlRGlyKTsKKyAgICBteSBAcHJvZnJhd0Zp
bGVzID0gZ3JlcCB7L2pzY190ZXN0Xy4qXC5wcm9mcmF3L30gbWFwIHtGaWxlOjpTcGVjLT5jYXRm
aWxlKCRjb3ZlcmFnZURpciwgJF8pfSByZWFkZGlyKFBST0ZSQVdTKTsKKyAgICBjbG9zZShQUk9G
UkFXUyk7CisgICAgdW5zaGlmdCBAY29tbWFuZCwgInhjcnVuIiwgImxsdm0tcHJvZmRhdGEiLCAi
bWVyZ2UiLCBAcHJvZnJhd0ZpbGVzLCAiLW8iLCAkcHJvZmRhdGFQYXRoOworICAgIHN5c3RlbShA
Y29tbWFuZCk7Cit9CisKK3N1YiBnZW5lcmF0ZUh0bWxGcm9tUHJvZmRhdGEgeworICAgIHByaW50
KCJHZW5lcmF0aW5nIGh0bWwgcmVwb3J0IGZyb20gcHJvZmRhdGEgZmlsZS5cbiIpOworICAgIG15
IEBjb21tYW5kOworICAgIHVuc2hpZnQgQGNvbW1hbmQsICJ4Y3J1biIsICJsbHZtLWNvdiIsICJz
aG93IiwgYnVpbHREeWxpYlBhdGhGb3JOYW1lKCJKYXZhU2NyaXB0Q29yZSIpLCAiLS1mb3JtYXQ9
aHRtbCIsICItLWluc3RyLXByb2ZpbGU9Ii4kcHJvZmRhdGFQYXRoLCAiLS1vdXRwdXQtZGlyPSIu
JGh0bWxEaXI7CisgICAgc3lzdGVtKEBjb21tYW5kKTsKKyAgCisgICAgbXkgQG9wZW5Db21tYW5k
OworICAgIHVuc2hpZnQgQG9wZW5Db21tYW5kLCAib3BlbiIsICRodG1sRGlyLiIvaW5kZXguaHRt
bCI7CisgICAgc3lzdGVtKEBvcGVuQ29tbWFuZCk7CisgICAgcHJpbnQoIkNvdmVyYWdlIHJlcG9y
dCBpcyBpbiAiLiRodG1sRGlyLiJcbiIpOworfQorCitzdWIgcHJvY2Vzc0NvdmVyYWdlRGF0YSB7
CisgIGNvbnZlcnRQcm9mcmF3VG9Qcm9mZGF0YSgpOworICBnZW5lcmF0ZUh0bWxGcm9tUHJvZmRh
dGEoKTsKK30KKwogaWYgKCRydW5UZXN0TWFzbSkgeyBydW5UZXN0KCJ0ZXN0bWFzbSIsICJhbGxN
YXNtVGVzdHNQYXNzZWQiKSB9CiBpZiAoJHJ1blRlc3RBaXIpIHsgcnVuVGVzdCgidGVzdGFpciIs
ICJhbGxBaXJUZXN0c1Bhc3NlZCIpIH0KIGlmICgkcnVuVGVzdEIzKSB7IHJ1blRlc3QoInRlc3Ri
MyIsICJhbGxCM1Rlc3RzUGFzc2VkIikgfQpAQCAtNjUxLDYgKzY5Myw5IEBAIGNoZGlyV2ViS2l0
KCk7CiAjIEZJWE1FOiByZXBvcnQgc3RyZXNzIHRlc3QgZmFpbHVyZXMgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNDA5NgogcnVuSlNDU3RyZXNzVGVzdHMoKTsKIHJl
cG9ydFRlc3RGYWlsdXJlcygpOworaWYgKCRjb3ZlcmFnZSkgeworICBwcm9jZXNzQ292ZXJhZ2VE
YXRhKCk7Cit9CiAKICRlbmRUaW1lID0gdGltZSgpOwogdXBsb2FkUmVzdWx0cygpOwpkaWZmIC0t
Z2l0IGEvVG9vbHMvU2NyaXB0cy9zZXQtd2Via2l0LWNvbmZpZ3VyYXRpb24gYi9Ub29scy9TY3Jp
cHRzL3NldC13ZWJraXQtY29uZmlndXJhdGlvbgppbmRleCBkN2M2OGQyNjZhMS4uMTAwMzZmMmEx
MWUgMTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvc2V0LXdlYmtpdC1jb25maWd1cmF0aW9uCisr
KyBiL1Rvb2xzL1NjcmlwdHMvc2V0LXdlYmtpdC1jb25maWd1cmF0aW9uCkBAIC0zOCw2ICszOCw3
IEBAIFVzYWdlOiAkcHJvZ3JhbU5hbWUgW29wdGlvbnNdCiAgIC0tMzItYml0ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgU2V0IHRoZSBkZWZhdWx0IGFyY2hpdGVjdHVyZSB0byAzMi1iaXQKICAg
LS02NC1iaXQgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGRlZmF1bHQgYXJjaGl0
ZWN0dXJlIHRvIDY0LWJpdAogICAtLVtuby1dYXNhbiAgICAgICAgICAgICAgICAgICAgICAgIEVu
YWJsZSBvciBkaXNhYmxlIGNsYW5nIGFkZHJlc3Mgc2FuaXRpemVyCisgIC0tW25vLV1jb3ZlcmFn
ZSAgICAgICAgICAgICAgICAgICAgRW5hYmxlIG9yIGRpc2FibGUgTExWTSBTb3VyY2UtYmFzZWQg
Q29kZSBDb3ZlcmFnZQogICAtLWZvcmNlLW9wdGltaXphdGlvbi1sZXZlbD08bGV2ZWw+IE9wdGlt
aXphdGlvbiBsZXZlbDogTzMsIE8yLCBPMSwgTzAsIE9zLCBPZmFzdCwgT2csIG9yIG5vbmUKICAg
LS1sdG8tbW9kZT08bW9kZT4gICAgICAgICAgICAgICAgICBTZXQgTFRPIG1vZGU6IGZ1bGwsIHRo
aW4sIG9yIG5vbmUKICAgLS1kZWJ1ZyAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhl
IGRlZmF1bHQgY29uZmlndXJhdGlvbiB0byBkZWJ1ZwpAQCAtNDksNiArNTAsOCBAQCBteSAkY29u
ZmlndXJhdGlvbiA9IHBhc3NlZENvbmZpZ3VyYXRpb24oKTsKIG15ICRhcmNoaXRlY3R1cmUgPSBw
YXNzZWRBcmNoaXRlY3R1cmUoKTsKIG15ICRlbmFibGVBU0FOID0gY2hlY2tGb3JBcmd1bWVudEFu
ZFJlbW92ZUZyb21BUkdWKCItLWFzYW4iKTsKIG15ICRkaXNhYmxlQVNBTiA9IGNoZWNrRm9yQXJn
dW1lbnRBbmRSZW1vdmVGcm9tQVJHVigiLS1uby1hc2FuIik7CitteSAkZW5hYmxlQ292ZXJhZ2Ug
PSBjaGVja0ZvckFyZ3VtZW50QW5kUmVtb3ZlRnJvbUFSR1YoIi0tY292ZXJhZ2UiKTsKK215ICRk
aXNhYmxlQ292ZXJhZ2UgPSBjaGVja0ZvckFyZ3VtZW50QW5kUmVtb3ZlRnJvbUFSR1YoIi0tbm8t
Y292ZXJhZ2UiKTsKIG15ICRsdG9Nb2RlOwogaWYgKCFjaGVja0ZvckFyZ3VtZW50QW5kUmVtb3Zl
RnJvbUFSR1ZHZXR0aW5nVmFsdWUoIi0tbHRvLW1vZGUiLCBcJGx0b01vZGUpKSB7CiAgICAgJGx0
b01vZGU9IiI7CkBAIC0xMjksNiArMTMyLDE0IEBAIGlmICgkZW5hYmxlQVNBTikgewogICAgIHVu
bGluayAiJGJhc2VQcm9kdWN0RGlyL0FTYW4iOwogfQogCitpZiAoJGVuYWJsZUNvdmVyYWdlKSB7
CisgICAgb3BlbiBDb3ZlcmFnZSwgIj4iLCAiJGJhc2VQcm9kdWN0RGlyL0NvdmVyYWdlIiBvciBk
aWU7CisgICAgcHJpbnQgQ292ZXJhZ2UgIllFUyI7CisgICAgY2xvc2UgQ292ZXJhZ2U7Cit9IGVs
c2lmICgkZGlzYWJsZUNvdmVyYWdlKSB7CisgICAgdW5saW5rICIkYmFzZVByb2R1Y3REaXIvQ292
ZXJhZ2UiOworfQorCiBpZiAoJGZvcmNlT3B0aW1pemF0aW9uTGV2ZWwgJiYgJGZvcmNlT3B0aW1p
emF0aW9uTGV2ZWwgZXEgIm5vbmUiKSB7CiAgICAgdW5saW5rICIkYmFzZVByb2R1Y3REaXIvRm9y
Y2VPcHRpbWl6YXRpb25MZXZlbCI7CiB9IGVsc2lmICgkZm9yY2VPcHRpbWl6YXRpb25MZXZlbCkg
ewpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRkaXJzLnBtIGIvVG9vbHMvU2NyaXB0
cy93ZWJraXRkaXJzLnBtCmluZGV4IDk2MWE0NjI4NmY0Li5hY2RhYmIzYWFlMCAxMDA3NTUKLS0t
IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRkaXJzLnBtCisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0
ZGlycy5wbQpAQCAtMTMzLDYgKzEzMyw3IEBAIG91ciBARVhQT1JUX09LOwogbXkgJGFyY2hpdGVj
dHVyZTsKIG15ICRhc2FuSXNFbmFibGVkOwogbXkgJGZvcmNlT3B0aW1pemF0aW9uTGV2ZWw7Citt
eSAkY292ZXJhZ2VJc0VuYWJsZWQ7CiBteSAkbHRvTW9kZTsKIG15ICRudW1iZXJPZkNQVXM7CiBt
eSAkbWF4Q1BVTG9hZDsKQEAgLTQzNiw2ICs0MzcsMTggQEAgc3ViIGRldGVybWluZUZvcmNlT3B0
aW1pemF0aW9uTGV2ZWwKICAgICB9CiB9CiAKK3N1YiBkZXRlcm1pbmVDb3ZlcmFnZUlzRW5hYmxl
ZAoreworICAgIHJldHVybiBpZiBkZWZpbmVkICRjb3ZlcmFnZUlzRW5hYmxlZDsKKyAgICBkZXRl
cm1pbmVCYXNlUHJvZHVjdERpcigpOworCisgICAgaWYgKG9wZW4gQ292ZXJhZ2UsICIkYmFzZVBy
b2R1Y3REaXIvQ292ZXJhZ2UiKSB7CisgICAgICAgICRjb3ZlcmFnZUlzRW5hYmxlZCA9IDxDb3Zl
cmFnZT47CisgICAgICAgIGNsb3NlIENvdmVyYWdlOworICAgICAgICBjaG9tcCAkY292ZXJhZ2VJ
c0VuYWJsZWQ7CisgICAgfQorfQorCiBzdWIgZGV0ZXJtaW5lTFRPTW9kZQogewogICAgIHJldHVy
biBpZiBkZWZpbmVkICRsdG9Nb2RlOwpAQCAtODc1LDYgKzg4OCw3IEBAIHN1YiBYY29kZU9wdGlv
bnMKICAgICBkZXRlcm1pbmVBcmNoaXRlY3R1cmUoKTsKICAgICBkZXRlcm1pbmVBU2FuSXNFbmFi
bGVkKCk7CiAgICAgZGV0ZXJtaW5lRm9yY2VPcHRpbWl6YXRpb25MZXZlbCgpOworICAgIGRldGVy
bWluZUNvdmVyYWdlSXNFbmFibGVkKCk7CiAgICAgZGV0ZXJtaW5lTFRPTW9kZSgpOwogICAgIGRl
dGVybWluZVhjb2RlU0RLKCk7CiAKQEAgLTg4MywxMSArODk3LDE3IEBAIHN1YiBYY29kZU9wdGlv
bnMKICAgICBwdXNoIEBvcHRpb25zLCAiLVNob3dCdWlsZE9wZXJhdGlvbkR1cmF0aW9uPVlFUyI7
CiAgICAgcHVzaCBAb3B0aW9ucywgKCItY29uZmlndXJhdGlvbiIsICRjb25maWd1cmF0aW9uKTsK
ICAgICBwdXNoIEBvcHRpb25zLCAoIi14Y2NvbmZpZyIsIHNvdXJjZURpcigpIC4gIi9Ub29scy9h
c2FuL2FzYW4ueGNjb25maWciLCAiQVNBTl9JR05PUkU9IiAuIHNvdXJjZURpcigpIC4gIi9Ub29s
cy9hc2FuL3dlYmtpdC1hc2FuLWlnbm9yZS50eHQiKSBpZiAkYXNhbklzRW5hYmxlZDsKKyAgICBw
dXNoIEBvcHRpb25zLCAoIi14Y2NvbmZpZyIsIHNvdXJjZURpcigpIC4gIi9Ub29scy9jb3ZlcmFn
ZS9jb3ZlcmFnZS54Y2NvbmZpZyIpIGlmICRjb3ZlcmFnZUlzRW5hYmxlZDsKICAgICBwdXNoIEBv
cHRpb25zLCAoIkdDQ19PUFRJTUlaQVRJT05fTEVWRUw9JGZvcmNlT3B0aW1pemF0aW9uTGV2ZWwi
KSBpZiAkZm9yY2VPcHRpbWl6YXRpb25MZXZlbDsKICAgICBwdXNoIEBvcHRpb25zLCAiV0tfTFRP
X01PREU9JGx0b01vZGUiIGlmICRsdG9Nb2RlOwogICAgIHB1c2ggQG9wdGlvbnMsIEBiYXNlUHJv
ZHVjdERpck9wdGlvbjsKICAgICBwdXNoIEBvcHRpb25zLCAiQVJDSFM9JGFyY2hpdGVjdHVyZSIg
aWYgJGFyY2hpdGVjdHVyZTsKICAgICBwdXNoIEBvcHRpb25zLCAiU0RLUk9PVD0keGNvZGVTREsi
IGlmICR4Y29kZVNESzsKKworICAgIGFwcGVuZFRvRW52aXJvbm1lbnRWYXJpYWJsZUxpc3QoIldF
QktJVF9DT1ZFUkFHRV9CVUlMRCIsICIxIikgaWYgJGNvdmVyYWdlSXNFbmFibGVkOworCisgICAg
ZGllICJjYW5ub3QgZW5hYmxlZCBib3RoIEFTQU4gYW5kIENvdmVyYWdlIGF0IHRoaXMgdGltZVxu
IiBpZiAkY292ZXJhZ2VJc0VuYWJsZWQgJiYgJGFzYW5Jc0VuYWJsZWQ7CisKICAgICBpZiAod2ls
bFVzZUlPU0RldmljZVNESygpKSB7CiAgICAgICAgIHB1c2ggQG9wdGlvbnMsICJFTkFCTEVfQklU
Q09ERT1OTyI7CiAgICAgICAgIGlmIChoYXNJT1NEZXZlbG9wbWVudENlcnRpZmljYXRlKCkpIHsK
ZGlmZiAtLWdpdCBhL1Rvb2xzL2NvdmVyYWdlL2NvdmVyYWdlLnhjY29uZmlnIGIvVG9vbHMvY292
ZXJhZ2UvY292ZXJhZ2UueGNjb25maWcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAuLmQ5NmY0ODk3OWY0Ci0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvY292ZXJhZ2UvY292
ZXJhZ2UueGNjb25maWcKQEAgLTAsMCArMSwyIEBACitPVEhFUl9DX0ZMQUdTPSQoaW5oZXJpdGVk
KSAtZnByb2ZpbGUtaW5zdHItZ2VuZXJhdGUgLWZjb3ZlcmFnZS1tYXBwaW5nCitPVEhFUl9DUExV
U1BMVVNGTEFHUz0kKGluaGVyaXRlZCkgLWZwcm9maWxlLWluc3RyLWdlbmVyYXRlIC1mY292ZXJh
Z2UtbWFwcGluZwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>388000</attachid>
            <date>2020-01-16 18:15:17 -0800</date>
            <delta_ts>2020-01-21 04:35:20 -0800</delta_ts>
            <desc>proposed patch</desc>
            <filename>webkit_206389_b.patch</filename>
            <type>text/plain</type>
            <size>9132</size>
            <attacher name="Tuomas Karkkainen">tuomas.webkit</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBiZThl
ZWY1YjY2NS4uZmMzMjA3ZWQ1ODEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9U
b29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMC0wMS0xNiAgVHVvbWFzIEthcmtr
YWluZW4gIDx0dW9tYXMud2Via2l0QGFwcGxlLmNvbT4KKworICAgICAgICBJdCBzaG91bGQgYmUg
cG9zc2libGUgdG8gYnVpbGQgSmF2YVNjcmlwdENvcmUgd2l0aCBMTFZNIFNvdXJjZS1iYXNlZCBD
b2RlIENvdmVyYWdlLCBydW4gdGhlIHRlc3RzIGFuZCBzZWUgdGhlIGNvdmVyYWdlIGRhdGEKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNjM4OQorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2NyaXB0cy9y
dW4tamF2YXNjcmlwdGNvcmUtdGVzdHM6CisgICAgICAgICogU2NyaXB0cy9zZXQtd2Via2l0LWNv
bmZpZ3VyYXRpb246CisgICAgICAgICogU2NyaXB0cy93ZWJraXRkaXJzLnBtOgorICAgICAgICAq
IGNvdmVyYWdlL2NvdmVyYWdlLnhjY29uZmlnOiBBZGRlZC4KKwogMjAyMC0wMS0xNiAgUGhpbGlw
cGUgTm9ybWFuZCAgPHBoaWxuQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dTdHJlYW1lcl1bV1BF
XSBDbGllbnQtc2lkZSB2aWRlbyByZW5kZXJpbmcgc3VwcG9ydApkaWZmIC0tZ2l0IGEvVG9vbHMv
U2NyaXB0cy9ydW4tamF2YXNjcmlwdGNvcmUtdGVzdHMgYi9Ub29scy9TY3JpcHRzL3J1bi1qYXZh
c2NyaXB0Y29yZS10ZXN0cwppbmRleCBjNTQyY2U5YmVjOC4uNzM5YzgyNzA5ZTAgMTAwNzU1Ci0t
LSBhL1Rvb2xzL1NjcmlwdHMvcnVuLWphdmFzY3JpcHRjb3JlLXRlc3RzCisrKyBiL1Rvb2xzL1Nj
cmlwdHMvcnVuLWphdmFzY3JpcHRjb3JlLXRlc3RzCkBAIC0xMDEsNiArMTAxLDcgQEAgbXkgJHZl
cnNpb247CiBteSAkdmVyc2lvbk5hbWU7CiBteSAkc2RrOwogbXkgJGZhaWxGYXN0ID0gMTsKK215
ICRjb3ZlcmFnZSA9IDA7CiBteSAlanNvbkRhdGEgPSAoKTsKIG15ICVyZXBvcnREYXRhID0gKCk7
CiBteSBAdGVzdFJlc3VsdHMgPSAoKTsKQEAgLTIxNiw2ICsyMTcsNyBAQCBteSAkbW96aWxsYVRl
c3RzRGVmYXVsdCA9IGRlZmF1bHRTdHJpbmdGb3JUZXN0U3RhdGUoJHJ1bk1vemlsbGFUZXN0cyk7
CiBteSAkaml0U3RyZXNzVGVzdHNEZWZhdWx0ID0gJHJ1bkpJVFN0cmVzc1Rlc3RzID8gIndpbGwg
cnVuIiA6ICIgd2lsbCBub3QgcnVuIjsKIG15ICRxdWlja01vZGVEZWZhdWx0ID0gJHJ1blF1aWNr
TW9kZSA/ICJzb21lIiA6ICJhbGwiOwogbXkgJGZhaWxGYXN0RGVmYXVsdCA9ICRmYWlsRmFzdCA/
ICJmYWlsIGZhc3QiIDogImRvbid0IGZhaWwgZmFzdCI7CitteSAkY292ZXJhZ2VEZWZhdWx0ID0g
JGNvdmVyYWdlID8gImNvdmVyYWdlIGVuYWJsZWQiIDogImNvdmVyYWdlIGRpc2FibGVkIjsKIG15
ICRjb3B5SlNDRGVmYXVsdCA9ICRjb3B5SlNDID8gImNvcHkiIDogImRvIG5vdCBjb3B5IjsKIG15
ICRmaWx0ZXI7CiBteSAkdXNhZ2UgPSA8PEVPRjsKQEAgLTIzOSw2ICsyNDEsNyBAQCBVc2FnZTog
JHByb2dyYW1OYW1lIFtvcHRpb25zXSBbb3B0aW9ucyB0byBwYXNzIHRvIGJ1aWxkIHN5c3RlbV0K
ICAgLS1bbm8tXWZhaWwtZmFzdCAgICAgICAgICAgICAgU3RvcCB0aGlzIHNjcmlwdCB3aGVuIGEg
dGVzdCBmYW1pbHkgcmVwb3J0cyBhbiBlcnJvciBvciBmYWlsdXJlIChkZWZhdWx0OiAkZmFpbEZh
c3REZWZhdWx0KQogICAtLVtuby1dZm9yY2UtY29sbGVjdENvbnRpbnVvdXNseSBFbmFibGUgdGhl
IGNvbGxlY3RDb250aW51b3VzbHkgbW9kZSBldmVuIGlmIGl0IHdhcyBkaXNhYmxlZCBvbiB0aGlz
IHBsYXRmb3JtLgogICAtLVtuby1dY29weSAgICAgICAgICAgICAgICAgICBDb3B5IChvciBkb24n
dCBjb3B5KSB0aGUgSmF2YVNjcmlwdENvcmUgYnVpbGQgcHJvZHVjdCBiZWZvcmUgdGVzdGluZyAo
ZGVmYXVsdDogJGNvcHlKU0NEZWZhdWx0KQorICAtLVtuby1dY292ZXJhZ2UgICAgICAgICAgICAg
ICBFbmFibGUgKG9yIGRpc2FibGUpIExMVk0gU291cmNlLWJhc2VkIENvZGUgQ292ZXJhZ2UgaW5z
dHJ1bWVudGF0aW9uIGZvciB0aGUgdGVzdCBydW4gKGRlZmF1bHQ6ICRjb3ZlcmFnZURlZmF1bHQp
CiAgIC0tanNvbi1vdXRwdXQ9ICAgICAgICAgICAgICAgIENyZWF0ZSBhIGZpbGUgYXQgc3BlY2lm
aWVkIHBhdGgsIGxpc3RpbmcgZmFpbGVkIHN0cmVzcyB0ZXN0cyBpbiBKU09OIGZvcm1hdC4KICAg
LS10YXJiYWxsICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlIGEgdGFyYmFsbCBvZiB0aGUgYnVu
ZGxlIHByb2R1Y2VkIGJ5IHJ1bm5pbmcgdGhlIEpTQyBzdHJlc3MgdGVzdHMuCiAgIC0tcmVtb3Rl
PSAgICAgICAgICAgICAgICAgICAgIFJ1biB0aGUgSlNDIHN0cmVzcyB0ZXN0cyBvbiB0aGUgc3Bl
Y2lmaWVkIHJlbW90ZSBob3N0LiBJbXBsaWVzIC0tdGFyYmFsbC4KQEAgLTMwNyw2ICszMTAsNyBA
QCBHZXRPcHRpb25zKAogICAgICdmYWlsLWZhc3QhJyA9PiBcJGZhaWxGYXN0LAogICAgICdmb3Jj
ZS1jb2xsZWN0Q29udGludW91c2x5IScgPT4gXCRmb3JjZUNvbGxlY3RDb250aW51b3VzbHksCiAg
ICAgJ2NvcHkhJyA9PiBcJGNvcHlKU0MsCisgICAgJ2NvdmVyYWdlIScgPT4gXCRjb3ZlcmFnZSwK
ICAgICAnanNvbi1vdXRwdXQ9cycgPT4gXCRqc29uRmlsZU5hbWUsCiAgICAgJ3RhcmJhbGwhJyA9
PiBcJGNyZWF0ZVRhcmJhbGwsCiAgICAgJ3JlbW90ZT1zJyA9PiBcJHJlbW90ZUhvc3QsCkBAIC00
OTAsNiArNDk0LDE3IEBAIGlmIChkZWZpbmVkKCRnbWFsbG9jUGF0aCkpIHsKICAgICB9CiB9CiAK
K215ICRjb3ZlcmFnZURpcjsKK215ICRodG1sRGlyOworbXkgJHByb2ZkYXRhUGF0aDsKKworaWYg
KCRjb3ZlcmFnZSkgeworICAkY292ZXJhZ2VEaXIgPSB0ZW1wZGlyKCk7CisgICRodG1sRGlyID0g
RmlsZTo6U3BlYy0+Y2F0ZmlsZSgkY292ZXJhZ2VEaXIsICJodG1sX3JlcG9ydCIpOworICAkcHJv
ZmRhdGFQYXRoID0gRmlsZTo6U3BlYy0+Y2F0ZmlsZSgkY292ZXJhZ2VEaXIsICJqc2NfdGVzdHMu
cHJvZmRhdGEiKTsKKyAgJGVudlZhcnMgLj0gICIgTExWTV9QUk9GSUxFX0ZJTEU9IiAuIEZpbGU6
OlNwZWMtPmNhdGZpbGUoJGNvdmVyYWdlRGlyLCAianNjX3Rlc3RfJTltLnByb2ZyYXciKTsKK30K
KwogbXkgJHByb2R1Y3REaXIgPSBqc2NQcm9kdWN0RGlyKCk7CiAkRU5We0RZTERfRlJBTUVXT1JL
X1BBVEh9ID0gJHByb2R1Y3REaXI7CiAkRU5We0pTQ1RFU1RfdGltZW91dH0gPSAxMjAgdW5sZXNz
ICRFTlZ7SlNDVEVTVF90aW1lb3V0fTsgIyBTZXQgYSAxMjAgc2Vjb25kIHRpbWVvdXQgb24gYWxs
IGpzYyB0ZXN0cyAoaWYgZW52aXJvbm1lbnQgdmFyaWFibGUgbm90IGRlZmluZWQgYWxyZWFkeSku
CkBAIC02MzgsNiArNjUzLDMzIEBAIHN1YiByZXBvcnRUZXN0RmFpbHVyZXMgewogICBwcmludCAi
XG4iOwogfQogCitzdWIgY29udmVydFByb2ZyYXdUb1Byb2ZkYXRhIHsKKyAgICBwcmludCgiQ29u
dmVydGluZyBwcm9mcmF3IGZpbGVzIHRvIHByb2ZkYXRhLlxuIik7CisgICAgbXkgQGNvbW1hbmQ7
CisgICAgb3BlbmRpcihQUk9GUkFXUywgJGNvdmVyYWdlRGlyKTsKKyAgICBteSBAcHJvZnJhd0Zp
bGVzID0gZ3JlcCB7L2pzY190ZXN0Xy4qXC5wcm9mcmF3L30gbWFwIHtGaWxlOjpTcGVjLT5jYXRm
aWxlKCRjb3ZlcmFnZURpciwgJF8pfSByZWFkZGlyKFBST0ZSQVdTKTsKKyAgICBjbG9zZShQUk9G
UkFXUyk7CisgICAgdW5zaGlmdCBAY29tbWFuZCwgInhjcnVuIiwgImxsdm0tcHJvZmRhdGEiLCAi
bWVyZ2UiLCBAcHJvZnJhd0ZpbGVzLCAiLW8iLCAkcHJvZmRhdGFQYXRoOworICAgIHN5c3RlbShA
Y29tbWFuZCk7Cit9CisKK3N1YiBnZW5lcmF0ZUh0bWxGcm9tUHJvZmRhdGEgeworICAgIHByaW50
KCJHZW5lcmF0aW5nIGh0bWwgcmVwb3J0IGZyb20gcHJvZmRhdGEgZmlsZS5cbiIpOworICAgIG15
IEBjb21tYW5kOworICAgIHVuc2hpZnQgQGNvbW1hbmQsICJ4Y3J1biIsICJsbHZtLWNvdiIsICJz
aG93IiwgYnVpbHREeWxpYlBhdGhGb3JOYW1lKCJKYXZhU2NyaXB0Q29yZSIpLCAiLS1mb3JtYXQ9
aHRtbCIsICItLWluc3RyLXByb2ZpbGU9Ii4kcHJvZmRhdGFQYXRoLCAiLS1vdXRwdXQtZGlyPSIu
JGh0bWxEaXI7CisgICAgc3lzdGVtKEBjb21tYW5kKTsKKyAgCisgICAgbXkgQG9wZW5Db21tYW5k
OworICAgIHVuc2hpZnQgQG9wZW5Db21tYW5kLCAib3BlbiIsICRodG1sRGlyLiIvaW5kZXguaHRt
bCI7CisgICAgc3lzdGVtKEBvcGVuQ29tbWFuZCk7CisgICAgcHJpbnQoIkNvdmVyYWdlIHJlcG9y
dCBpcyBpbiAiLiRodG1sRGlyLiJcbiIpOworfQorCitzdWIgcHJvY2Vzc0NvdmVyYWdlRGF0YSB7
CisgIGNvbnZlcnRQcm9mcmF3VG9Qcm9mZGF0YSgpOworICBnZW5lcmF0ZUh0bWxGcm9tUHJvZmRh
dGEoKTsKK30KKwogaWYgKCRydW5UZXN0TWFzbSkgeyBydW5UZXN0KCJ0ZXN0bWFzbSIsICJhbGxN
YXNtVGVzdHNQYXNzZWQiKSB9CiBpZiAoJHJ1blRlc3RBaXIpIHsgcnVuVGVzdCgidGVzdGFpciIs
ICJhbGxBaXJUZXN0c1Bhc3NlZCIpIH0KIGlmICgkcnVuVGVzdEIzKSB7IHJ1blRlc3QoInRlc3Ri
MyIsICJhbGxCM1Rlc3RzUGFzc2VkIikgfQpAQCAtNjUxLDYgKzY5Myw5IEBAIGNoZGlyV2ViS2l0
KCk7CiAjIEZJWE1FOiByZXBvcnQgc3RyZXNzIHRlc3QgZmFpbHVyZXMgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNDA5NgogcnVuSlNDU3RyZXNzVGVzdHMoKTsKIHJl
cG9ydFRlc3RGYWlsdXJlcygpOworaWYgKCRjb3ZlcmFnZSkgeworICBwcm9jZXNzQ292ZXJhZ2VE
YXRhKCk7Cit9CiAKICRlbmRUaW1lID0gdGltZSgpOwogdXBsb2FkUmVzdWx0cygpOwpkaWZmIC0t
Z2l0IGEvVG9vbHMvU2NyaXB0cy9zZXQtd2Via2l0LWNvbmZpZ3VyYXRpb24gYi9Ub29scy9TY3Jp
cHRzL3NldC13ZWJraXQtY29uZmlndXJhdGlvbgppbmRleCBkN2M2OGQyNjZhMS4uMTAwMzZmMmEx
MWUgMTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvc2V0LXdlYmtpdC1jb25maWd1cmF0aW9uCisr
KyBiL1Rvb2xzL1NjcmlwdHMvc2V0LXdlYmtpdC1jb25maWd1cmF0aW9uCkBAIC0zOCw2ICszOCw3
IEBAIFVzYWdlOiAkcHJvZ3JhbU5hbWUgW29wdGlvbnNdCiAgIC0tMzItYml0ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgU2V0IHRoZSBkZWZhdWx0IGFyY2hpdGVjdHVyZSB0byAzMi1iaXQKICAg
LS02NC1iaXQgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGRlZmF1bHQgYXJjaGl0
ZWN0dXJlIHRvIDY0LWJpdAogICAtLVtuby1dYXNhbiAgICAgICAgICAgICAgICAgICAgICAgIEVu
YWJsZSBvciBkaXNhYmxlIGNsYW5nIGFkZHJlc3Mgc2FuaXRpemVyCisgIC0tW25vLV1jb3ZlcmFn
ZSAgICAgICAgICAgICAgICAgICAgRW5hYmxlIG9yIGRpc2FibGUgTExWTSBTb3VyY2UtYmFzZWQg
Q29kZSBDb3ZlcmFnZQogICAtLWZvcmNlLW9wdGltaXphdGlvbi1sZXZlbD08bGV2ZWw+IE9wdGlt
aXphdGlvbiBsZXZlbDogTzMsIE8yLCBPMSwgTzAsIE9zLCBPZmFzdCwgT2csIG9yIG5vbmUKICAg
LS1sdG8tbW9kZT08bW9kZT4gICAgICAgICAgICAgICAgICBTZXQgTFRPIG1vZGU6IGZ1bGwsIHRo
aW4sIG9yIG5vbmUKICAgLS1kZWJ1ZyAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhl
IGRlZmF1bHQgY29uZmlndXJhdGlvbiB0byBkZWJ1ZwpAQCAtNDksNiArNTAsOCBAQCBteSAkY29u
ZmlndXJhdGlvbiA9IHBhc3NlZENvbmZpZ3VyYXRpb24oKTsKIG15ICRhcmNoaXRlY3R1cmUgPSBw
YXNzZWRBcmNoaXRlY3R1cmUoKTsKIG15ICRlbmFibGVBU0FOID0gY2hlY2tGb3JBcmd1bWVudEFu
ZFJlbW92ZUZyb21BUkdWKCItLWFzYW4iKTsKIG15ICRkaXNhYmxlQVNBTiA9IGNoZWNrRm9yQXJn
dW1lbnRBbmRSZW1vdmVGcm9tQVJHVigiLS1uby1hc2FuIik7CitteSAkZW5hYmxlQ292ZXJhZ2Ug
PSBjaGVja0ZvckFyZ3VtZW50QW5kUmVtb3ZlRnJvbUFSR1YoIi0tY292ZXJhZ2UiKTsKK215ICRk
aXNhYmxlQ292ZXJhZ2UgPSBjaGVja0ZvckFyZ3VtZW50QW5kUmVtb3ZlRnJvbUFSR1YoIi0tbm8t
Y292ZXJhZ2UiKTsKIG15ICRsdG9Nb2RlOwogaWYgKCFjaGVja0ZvckFyZ3VtZW50QW5kUmVtb3Zl
RnJvbUFSR1ZHZXR0aW5nVmFsdWUoIi0tbHRvLW1vZGUiLCBcJGx0b01vZGUpKSB7CiAgICAgJGx0
b01vZGU9IiI7CkBAIC0xMjksNiArMTMyLDE0IEBAIGlmICgkZW5hYmxlQVNBTikgewogICAgIHVu
bGluayAiJGJhc2VQcm9kdWN0RGlyL0FTYW4iOwogfQogCitpZiAoJGVuYWJsZUNvdmVyYWdlKSB7
CisgICAgb3BlbiBDb3ZlcmFnZSwgIj4iLCAiJGJhc2VQcm9kdWN0RGlyL0NvdmVyYWdlIiBvciBk
aWU7CisgICAgcHJpbnQgQ292ZXJhZ2UgIllFUyI7CisgICAgY2xvc2UgQ292ZXJhZ2U7Cit9IGVs
c2lmICgkZGlzYWJsZUNvdmVyYWdlKSB7CisgICAgdW5saW5rICIkYmFzZVByb2R1Y3REaXIvQ292
ZXJhZ2UiOworfQorCiBpZiAoJGZvcmNlT3B0aW1pemF0aW9uTGV2ZWwgJiYgJGZvcmNlT3B0aW1p
emF0aW9uTGV2ZWwgZXEgIm5vbmUiKSB7CiAgICAgdW5saW5rICIkYmFzZVByb2R1Y3REaXIvRm9y
Y2VPcHRpbWl6YXRpb25MZXZlbCI7CiB9IGVsc2lmICgkZm9yY2VPcHRpbWl6YXRpb25MZXZlbCkg
ewpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRkaXJzLnBtIGIvVG9vbHMvU2NyaXB0
cy93ZWJraXRkaXJzLnBtCmluZGV4IDk2MWE0NjI4NmY0Li5hY2RhYmIzYWFlMCAxMDA3NTUKLS0t
IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRkaXJzLnBtCisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0
ZGlycy5wbQpAQCAtMTMzLDYgKzEzMyw3IEBAIG91ciBARVhQT1JUX09LOwogbXkgJGFyY2hpdGVj
dHVyZTsKIG15ICRhc2FuSXNFbmFibGVkOwogbXkgJGZvcmNlT3B0aW1pemF0aW9uTGV2ZWw7Citt
eSAkY292ZXJhZ2VJc0VuYWJsZWQ7CiBteSAkbHRvTW9kZTsKIG15ICRudW1iZXJPZkNQVXM7CiBt
eSAkbWF4Q1BVTG9hZDsKQEAgLTQzNiw2ICs0MzcsMTggQEAgc3ViIGRldGVybWluZUZvcmNlT3B0
aW1pemF0aW9uTGV2ZWwKICAgICB9CiB9CiAKK3N1YiBkZXRlcm1pbmVDb3ZlcmFnZUlzRW5hYmxl
ZAoreworICAgIHJldHVybiBpZiBkZWZpbmVkICRjb3ZlcmFnZUlzRW5hYmxlZDsKKyAgICBkZXRl
cm1pbmVCYXNlUHJvZHVjdERpcigpOworCisgICAgaWYgKG9wZW4gQ292ZXJhZ2UsICIkYmFzZVBy
b2R1Y3REaXIvQ292ZXJhZ2UiKSB7CisgICAgICAgICRjb3ZlcmFnZUlzRW5hYmxlZCA9IDxDb3Zl
cmFnZT47CisgICAgICAgIGNsb3NlIENvdmVyYWdlOworICAgICAgICBjaG9tcCAkY292ZXJhZ2VJ
c0VuYWJsZWQ7CisgICAgfQorfQorCiBzdWIgZGV0ZXJtaW5lTFRPTW9kZQogewogICAgIHJldHVy
biBpZiBkZWZpbmVkICRsdG9Nb2RlOwpAQCAtODc1LDYgKzg4OCw3IEBAIHN1YiBYY29kZU9wdGlv
bnMKICAgICBkZXRlcm1pbmVBcmNoaXRlY3R1cmUoKTsKICAgICBkZXRlcm1pbmVBU2FuSXNFbmFi
bGVkKCk7CiAgICAgZGV0ZXJtaW5lRm9yY2VPcHRpbWl6YXRpb25MZXZlbCgpOworICAgIGRldGVy
bWluZUNvdmVyYWdlSXNFbmFibGVkKCk7CiAgICAgZGV0ZXJtaW5lTFRPTW9kZSgpOwogICAgIGRl
dGVybWluZVhjb2RlU0RLKCk7CiAKQEAgLTg4MywxMSArODk3LDE3IEBAIHN1YiBYY29kZU9wdGlv
bnMKICAgICBwdXNoIEBvcHRpb25zLCAiLVNob3dCdWlsZE9wZXJhdGlvbkR1cmF0aW9uPVlFUyI7
CiAgICAgcHVzaCBAb3B0aW9ucywgKCItY29uZmlndXJhdGlvbiIsICRjb25maWd1cmF0aW9uKTsK
ICAgICBwdXNoIEBvcHRpb25zLCAoIi14Y2NvbmZpZyIsIHNvdXJjZURpcigpIC4gIi9Ub29scy9h
c2FuL2FzYW4ueGNjb25maWciLCAiQVNBTl9JR05PUkU9IiAuIHNvdXJjZURpcigpIC4gIi9Ub29s
cy9hc2FuL3dlYmtpdC1hc2FuLWlnbm9yZS50eHQiKSBpZiAkYXNhbklzRW5hYmxlZDsKKyAgICBw
dXNoIEBvcHRpb25zLCAoIi14Y2NvbmZpZyIsIHNvdXJjZURpcigpIC4gIi9Ub29scy9jb3ZlcmFn
ZS9jb3ZlcmFnZS54Y2NvbmZpZyIpIGlmICRjb3ZlcmFnZUlzRW5hYmxlZDsKICAgICBwdXNoIEBv
cHRpb25zLCAoIkdDQ19PUFRJTUlaQVRJT05fTEVWRUw9JGZvcmNlT3B0aW1pemF0aW9uTGV2ZWwi
KSBpZiAkZm9yY2VPcHRpbWl6YXRpb25MZXZlbDsKICAgICBwdXNoIEBvcHRpb25zLCAiV0tfTFRP
X01PREU9JGx0b01vZGUiIGlmICRsdG9Nb2RlOwogICAgIHB1c2ggQG9wdGlvbnMsIEBiYXNlUHJv
ZHVjdERpck9wdGlvbjsKICAgICBwdXNoIEBvcHRpb25zLCAiQVJDSFM9JGFyY2hpdGVjdHVyZSIg
aWYgJGFyY2hpdGVjdHVyZTsKICAgICBwdXNoIEBvcHRpb25zLCAiU0RLUk9PVD0keGNvZGVTREsi
IGlmICR4Y29kZVNESzsKKworICAgIGFwcGVuZFRvRW52aXJvbm1lbnRWYXJpYWJsZUxpc3QoIldF
QktJVF9DT1ZFUkFHRV9CVUlMRCIsICIxIikgaWYgJGNvdmVyYWdlSXNFbmFibGVkOworCisgICAg
ZGllICJjYW5ub3QgZW5hYmxlZCBib3RoIEFTQU4gYW5kIENvdmVyYWdlIGF0IHRoaXMgdGltZVxu
IiBpZiAkY292ZXJhZ2VJc0VuYWJsZWQgJiYgJGFzYW5Jc0VuYWJsZWQ7CisKICAgICBpZiAod2ls
bFVzZUlPU0RldmljZVNESygpKSB7CiAgICAgICAgIHB1c2ggQG9wdGlvbnMsICJFTkFCTEVfQklU
Q09ERT1OTyI7CiAgICAgICAgIGlmIChoYXNJT1NEZXZlbG9wbWVudENlcnRpZmljYXRlKCkpIHsK
ZGlmZiAtLWdpdCBhL1Rvb2xzL2NvdmVyYWdlL2NvdmVyYWdlLnhjY29uZmlnIGIvVG9vbHMvY292
ZXJhZ2UvY292ZXJhZ2UueGNjb25maWcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAuLjJjOTliYjUyNGNkCi0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvY292ZXJhZ2UvY292
ZXJhZ2UueGNjb25maWcKQEAgLTAsMCArMSwzIEBACitPVEhFUl9DX0ZMQUdTPSQoaW5oZXJpdGVk
KSAtZnByb2ZpbGUtaW5zdHItZ2VuZXJhdGUgLWZjb3ZlcmFnZS1tYXBwaW5nCitPVEhFUl9DUExV
U1BMVVNGTEFHUz0kKGluaGVyaXRlZCkgLWZwcm9maWxlLWluc3RyLWdlbmVyYXRlIC1mY292ZXJh
Z2UtbWFwcGluZworQVNBTl9PVEhFUl9MREZMQUdTPSQoaW5oZXJpdGVkKSAtZnByb2ZpbGUtaW5z
dHItZ2VuZXJhdGUK
</data>
<flag name="review"
          id="403764"
          type_id="1"
          status="-"
          setter="ap"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>388290</attachid>
            <date>2020-01-21 04:35:20 -0800</date>
            <delta_ts>2020-01-22 00:33:21 -0800</delta_ts>
            <desc>proposed patch</desc>
            <filename>webkit_206389_c.patch</filename>
            <type>text/plain</type>
            <size>9331</size>
            <attacher name="Tuomas Karkkainen">tuomas.webkit</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvcnVuLWphdmFzY3JpcHRjb3JlLXRlc3RzIGIvVG9v
bHMvU2NyaXB0cy9ydW4tamF2YXNjcmlwdGNvcmUtdGVzdHMKaW5kZXggYzU0MmNlOWJlYzguLmY0
MGRiYWVmMGI5IDEwMDc1NQotLS0gYS9Ub29scy9TY3JpcHRzL3J1bi1qYXZhc2NyaXB0Y29yZS10
ZXN0cworKysgYi9Ub29scy9TY3JpcHRzL3J1bi1qYXZhc2NyaXB0Y29yZS10ZXN0cwpAQCAtMTAx
LDYgKzEwMSw4IEBAIG15ICR2ZXJzaW9uOwogbXkgJHZlcnNpb25OYW1lOwogbXkgJHNkazsKIG15
ICRmYWlsRmFzdCA9IDE7CitteSAkY292ZXJhZ2UgPSAwOworbXkgJGNvdmVyYWdlRGlyOwogbXkg
JWpzb25EYXRhID0gKCk7CiBteSAlcmVwb3J0RGF0YSA9ICgpOwogbXkgQHRlc3RSZXN1bHRzID0g
KCk7CkBAIC0yMTYsNiArMjE4LDcgQEAgbXkgJG1vemlsbGFUZXN0c0RlZmF1bHQgPSBkZWZhdWx0
U3RyaW5nRm9yVGVzdFN0YXRlKCRydW5Nb3ppbGxhVGVzdHMpOwogbXkgJGppdFN0cmVzc1Rlc3Rz
RGVmYXVsdCA9ICRydW5KSVRTdHJlc3NUZXN0cyA/ICJ3aWxsIHJ1biIgOiAiIHdpbGwgbm90IHJ1
biI7CiBteSAkcXVpY2tNb2RlRGVmYXVsdCA9ICRydW5RdWlja01vZGUgPyAic29tZSIgOiAiYWxs
IjsKIG15ICRmYWlsRmFzdERlZmF1bHQgPSAkZmFpbEZhc3QgPyAiZmFpbCBmYXN0IiA6ICJkb24n
dCBmYWlsIGZhc3QiOworbXkgJGNvdmVyYWdlRGVmYXVsdCA9ICRjb3ZlcmFnZSA/ICJjb3ZlcmFn
ZSBlbmFibGVkIiA6ICJjb3ZlcmFnZSBkaXNhYmxlZCI7CiBteSAkY29weUpTQ0RlZmF1bHQgPSAk
Y29weUpTQyA/ICJjb3B5IiA6ICJkbyBub3QgY29weSI7CiBteSAkZmlsdGVyOwogbXkgJHVzYWdl
ID0gPDxFT0Y7CkBAIC0yMzksNiArMjQyLDggQEAgVXNhZ2U6ICRwcm9ncmFtTmFtZSBbb3B0aW9u
c10gW29wdGlvbnMgdG8gcGFzcyB0byBidWlsZCBzeXN0ZW1dCiAgIC0tW25vLV1mYWlsLWZhc3Qg
ICAgICAgICAgICAgIFN0b3AgdGhpcyBzY3JpcHQgd2hlbiBhIHRlc3QgZmFtaWx5IHJlcG9ydHMg
YW4gZXJyb3Igb3IgZmFpbHVyZSAoZGVmYXVsdDogJGZhaWxGYXN0RGVmYXVsdCkKICAgLS1bbm8t
XWZvcmNlLWNvbGxlY3RDb250aW51b3VzbHkgRW5hYmxlIHRoZSBjb2xsZWN0Q29udGludW91c2x5
IG1vZGUgZXZlbiBpZiBpdCB3YXMgZGlzYWJsZWQgb24gdGhpcyBwbGF0Zm9ybS4KICAgLS1bbm8t
XWNvcHkgICAgICAgICAgICAgICAgICAgQ29weSAob3IgZG9uJ3QgY29weSkgdGhlIEphdmFTY3Jp
cHRDb3JlIGJ1aWxkIHByb2R1Y3QgYmVmb3JlIHRlc3RpbmcgKGRlZmF1bHQ6ICRjb3B5SlNDRGVm
YXVsdCkKKyAgLS1bbm8tXWNvdmVyYWdlICAgICAgICAgICAgICAgRW5hYmxlIChvciBkaXNhYmxl
KSBMTFZNIFNvdXJjZS1iYXNlZCBDb2RlIENvdmVyYWdlIGluc3RydW1lbnRhdGlvbiBmb3IgdGhl
IHRlc3QgcnVuIChkZWZhdWx0OiAkY292ZXJhZ2VEZWZhdWx0KS4KKyAgLS1jb3ZlcmFnZS1kaXI9
ICAgICAgICAgICAgICAgT3V0cHV0IHBhdGggZm9yIExMVk0gU291cmNlLWJhc2VkIENvZGUgQ292
ZXJhZ2UgaW5zdHJ1bWVudGF0aW9uIChkZWZhdWx0OiBhIHRlbXBvcmFyeSBkaXJlY3RvcnkpLgog
ICAtLWpzb24tb3V0cHV0PSAgICAgICAgICAgICAgICBDcmVhdGUgYSBmaWxlIGF0IHNwZWNpZmll
ZCBwYXRoLCBsaXN0aW5nIGZhaWxlZCBzdHJlc3MgdGVzdHMgaW4gSlNPTiBmb3JtYXQuCiAgIC0t
dGFyYmFsbCAgICAgICAgICAgICAgICAgICAgIENyZWF0ZSBhIHRhcmJhbGwgb2YgdGhlIGJ1bmRs
ZSBwcm9kdWNlZCBieSBydW5uaW5nIHRoZSBKU0Mgc3RyZXNzIHRlc3RzLgogICAtLXJlbW90ZT0g
ICAgICAgICAgICAgICAgICAgICBSdW4gdGhlIEpTQyBzdHJlc3MgdGVzdHMgb24gdGhlIHNwZWNp
ZmllZCByZW1vdGUgaG9zdC4gSW1wbGllcyAtLXRhcmJhbGwuCkBAIC0zMDcsNiArMzEyLDggQEAg
R2V0T3B0aW9ucygKICAgICAnZmFpbC1mYXN0IScgPT4gXCRmYWlsRmFzdCwKICAgICAnZm9yY2Ut
Y29sbGVjdENvbnRpbnVvdXNseSEnID0+IFwkZm9yY2VDb2xsZWN0Q29udGludW91c2x5LAogICAg
ICdjb3B5IScgPT4gXCRjb3B5SlNDLAorICAgICdjb3ZlcmFnZSEnID0+IFwkY292ZXJhZ2UsCisg
ICAgJ2NvdmVyYWdlLWRpcj1zJyA9PiBcJGNvdmVyYWdlRGlyLAogICAgICdqc29uLW91dHB1dD1z
JyA9PiBcJGpzb25GaWxlTmFtZSwKICAgICAndGFyYmFsbCEnID0+IFwkY3JlYXRlVGFyYmFsbCwK
ICAgICAncmVtb3RlPXMnID0+IFwkcmVtb3RlSG9zdCwKQEAgLTQ5MCw2ICs0OTcsMzIgQEAgaWYg
KGRlZmluZWQoJGdtYWxsb2NQYXRoKSkgewogICAgIH0KIH0KIAorbXkgJGh0bWxEaXI7CitteSAk
cHJvZmRhdGFQYXRoOworCitpZiAoJGNvdmVyYWdlKQoreworICAgIGlmICgkY292ZXJhZ2VEaXIp
CisgICAgeworICAgICAgICBwcmludCAiVXNpbmcgb3V0cHV0IHBhdGggc3BlY2lmaWVkIG9uIHRo
ZSBjb21tYW5kIGxpbmUgZm9yIGNvdmVyYWdlIGRhdGE6ICRjb3ZlcmFnZURpclxuIjsKKyAgICB9
CisgICAgZWxzZQorICAgIHsKKyAgICAgICAgJGNvdmVyYWdlRGlyID0gdGVtcGRpcigpOworICAg
ICAgICBwcmludCAiR2VuZXJhdGluZyBjb3ZlcmFnZSBkYXRhIGludG8gJGNvdmVyYWdlRGlyXG4i
OworICAgIH0KKyAgICAkaHRtbERpciA9IEZpbGU6OlNwZWMtPmNhdGZpbGUoJGNvdmVyYWdlRGly
LCAiaHRtbF9yZXBvcnQiKTsKKyAgICAkcHJvZmRhdGFQYXRoID0gRmlsZTo6U3BlYy0+Y2F0Zmls
ZSgkY292ZXJhZ2VEaXIsICJqc2NfdGVzdHMucHJvZmRhdGEiKTsKKyAgICAkZW52VmFycyAuPSAg
IiBMTFZNX1BST0ZJTEVfRklMRT0iIC4gRmlsZTo6U3BlYy0+Y2F0ZmlsZSgkY292ZXJhZ2VEaXIs
ICJqc2NfdGVzdF8lOW0ucHJvZnJhdyIpOworfQorZWxzZQoreworICAgIGlmICgkY292ZXJhZ2VE
aXIpCisgICAgeworICAgICAgICBkaWUgIi0tY292ZXJhZ2UtZGlyPSBpcyBzZXQgYnV0IC0tY292
ZXJhZ2UgaXMgbm90IHNldFxuIgorICAgIH0KK30KKwogbXkgJHByb2R1Y3REaXIgPSBqc2NQcm9k
dWN0RGlyKCk7CiAkRU5We0RZTERfRlJBTUVXT1JLX1BBVEh9ID0gJHByb2R1Y3REaXI7CiAkRU5W
e0pTQ1RFU1RfdGltZW91dH0gPSAxMjAgdW5sZXNzICRFTlZ7SlNDVEVTVF90aW1lb3V0fTsgIyBT
ZXQgYSAxMjAgc2Vjb25kIHRpbWVvdXQgb24gYWxsIGpzYyB0ZXN0cyAoaWYgZW52aXJvbm1lbnQg
dmFyaWFibGUgbm90IGRlZmluZWQgYWxyZWFkeSkuCkBAIC02MzgsNiArNjcxLDMzIEBAIHN1YiBy
ZXBvcnRUZXN0RmFpbHVyZXMgewogICBwcmludCAiXG4iOwogfQogCitzdWIgY29udmVydFByb2Zy
YXdUb1Byb2ZkYXRhCit7CisgICAgcHJpbnQgIkNvbnZlcnRpbmcgcHJvZnJhdyBmaWxlcyB0byBw
cm9mZGF0YS5cbiI7CisgICAgbXkgQGNvbW1hbmQ7CisgICAgb3BlbmRpcihQUk9GUkFXUywgJGNv
dmVyYWdlRGlyKTsKKyAgICBteSBAcHJvZnJhd0ZpbGVzID0gZ3JlcCB7L2pzY190ZXN0Xy4qXC5w
cm9mcmF3L30gbWFwIHtGaWxlOjpTcGVjLT5jYXRmaWxlKCRjb3ZlcmFnZURpciwgJF8pfSByZWFk
ZGlyKFBST0ZSQVdTKTsKKyAgICBjbG9zZShQUk9GUkFXUyk7CisgICAgdW5zaGlmdCBAY29tbWFu
ZCwgInhjcnVuIiwgImxsdm0tcHJvZmRhdGEiLCAibWVyZ2UiLCBAcHJvZnJhd0ZpbGVzLCAiLW8i
LCAkcHJvZmRhdGFQYXRoOworICAgIHN5c3RlbShAY29tbWFuZCk7Cit9CisKK3N1YiBnZW5lcmF0
ZUhUTUxGcm9tUHJvZmRhdGEKK3sKKyAgICBwcmludCAiR2VuZXJhdGluZyBodG1sIHJlcG9ydCBm
cm9tIHByb2ZkYXRhIGZpbGUuXG4iOworICAgIG15IEBjb21tYW5kOworICAgIHVuc2hpZnQgQGNv
bW1hbmQsICJ4Y3J1biIsICJsbHZtLWNvdiIsICJzaG93IiwgYnVpbHREeWxpYlBhdGhGb3JOYW1l
KCJKYXZhU2NyaXB0Q29yZSIpLCAiLS1mb3JtYXQ9aHRtbCIsICItLWluc3RyLXByb2ZpbGU9IiAu
ICRwcm9mZGF0YVBhdGgsICItLW91dHB1dC1kaXI9IiAuICRodG1sRGlyOworICAgIHN5c3RlbShA
Y29tbWFuZCk7CisKKyAgICBwcmludCAiSFRNTCByZXBvcnQgaXMgaW4gZmlsZTovLyRodG1sRGly
L2luZGV4Lmh0bWxcbiI7Cit9CisKK3N1YiBwcm9jZXNzQ292ZXJhZ2VEYXRhCit7CisgICAgY29u
dmVydFByb2ZyYXdUb1Byb2ZkYXRhKCk7CisgICAgZ2VuZXJhdGVIVE1MRnJvbVByb2ZkYXRhKCk7
Cit9CisKIGlmICgkcnVuVGVzdE1hc20pIHsgcnVuVGVzdCgidGVzdG1hc20iLCAiYWxsTWFzbVRl
c3RzUGFzc2VkIikgfQogaWYgKCRydW5UZXN0QWlyKSB7IHJ1blRlc3QoInRlc3RhaXIiLCAiYWxs
QWlyVGVzdHNQYXNzZWQiKSB9CiBpZiAoJHJ1blRlc3RCMykgeyBydW5UZXN0KCJ0ZXN0YjMiLCAi
YWxsQjNUZXN0c1Bhc3NlZCIpIH0KQEAgLTY1MSw2ICs3MTEsMTAgQEAgY2hkaXJXZWJLaXQoKTsK
ICMgRklYTUU6IHJlcG9ydCBzdHJlc3MgdGVzdCBmYWlsdXJlcyBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA0MDk2CiBydW5KU0NTdHJlc3NUZXN0cygpOwogcmVwb3J0
VGVzdEZhaWx1cmVzKCk7CitpZiAoJGNvdmVyYWdlKQoreworICAgIHByb2Nlc3NDb3ZlcmFnZURh
dGEoKTsKK30KIAogJGVuZFRpbWUgPSB0aW1lKCk7CiB1cGxvYWRSZXN1bHRzKCk7CmRpZmYgLS1n
aXQgYS9Ub29scy9TY3JpcHRzL3NldC13ZWJraXQtY29uZmlndXJhdGlvbiBiL1Rvb2xzL1Njcmlw
dHMvc2V0LXdlYmtpdC1jb25maWd1cmF0aW9uCmluZGV4IGQ3YzY4ZDI2NmExLi43NDExZDA1MzY4
ZSAxMDA3NTUKLS0tIGEvVG9vbHMvU2NyaXB0cy9zZXQtd2Via2l0LWNvbmZpZ3VyYXRpb24KKysr
IGIvVG9vbHMvU2NyaXB0cy9zZXQtd2Via2l0LWNvbmZpZ3VyYXRpb24KQEAgLTM4LDYgKzM4LDcg
QEAgVXNhZ2U6ICRwcm9ncmFtTmFtZSBbb3B0aW9uc10KICAgLS0zMi1iaXQgICAgICAgICAgICAg
ICAgICAgICAgICAgICBTZXQgdGhlIGRlZmF1bHQgYXJjaGl0ZWN0dXJlIHRvIDMyLWJpdAogICAt
LTY0LWJpdCAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgZGVmYXVsdCBhcmNoaXRl
Y3R1cmUgdG8gNjQtYml0CiAgIC0tW25vLV1hc2FuICAgICAgICAgICAgICAgICAgICAgICAgRW5h
YmxlIG9yIGRpc2FibGUgY2xhbmcgYWRkcmVzcyBzYW5pdGl6ZXIKKyAgLS1bbm8tXWNvdmVyYWdl
ICAgICAgICAgICAgICAgICAgICBFbmFibGUgb3IgZGlzYWJsZSBMTFZNIFNvdXJjZS1iYXNlZCBD
b2RlIENvdmVyYWdlCiAgIC0tZm9yY2Utb3B0aW1pemF0aW9uLWxldmVsPTxsZXZlbD4gT3B0aW1p
emF0aW9uIGxldmVsOiBPMywgTzIsIE8xLCBPMCwgT3MsIE9mYXN0LCBPZywgb3Igbm9uZQogICAt
LWx0by1tb2RlPTxtb2RlPiAgICAgICAgICAgICAgICAgIFNldCBMVE8gbW9kZTogZnVsbCwgdGhp
biwgb3Igbm9uZQogICAtLWRlYnVnICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUg
ZGVmYXVsdCBjb25maWd1cmF0aW9uIHRvIGRlYnVnCkBAIC00OSw2ICs1MCw4IEBAIG15ICRjb25m
aWd1cmF0aW9uID0gcGFzc2VkQ29uZmlndXJhdGlvbigpOwogbXkgJGFyY2hpdGVjdHVyZSA9IHBh
c3NlZEFyY2hpdGVjdHVyZSgpOwogbXkgJGVuYWJsZUFTQU4gPSBjaGVja0ZvckFyZ3VtZW50QW5k
UmVtb3ZlRnJvbUFSR1YoIi0tYXNhbiIpOwogbXkgJGRpc2FibGVBU0FOID0gY2hlY2tGb3JBcmd1
bWVudEFuZFJlbW92ZUZyb21BUkdWKCItLW5vLWFzYW4iKTsKK215ICRlbmFibGVDb3ZlcmFnZSA9
IGNoZWNrRm9yQXJndW1lbnRBbmRSZW1vdmVGcm9tQVJHVigiLS1jb3ZlcmFnZSIpOworbXkgJGRp
c2FibGVDb3ZlcmFnZSA9IGNoZWNrRm9yQXJndW1lbnRBbmRSZW1vdmVGcm9tQVJHVigiLS1uby1j
b3ZlcmFnZSIpOwogbXkgJGx0b01vZGU7CiBpZiAoIWNoZWNrRm9yQXJndW1lbnRBbmRSZW1vdmVG
cm9tQVJHVkdldHRpbmdWYWx1ZSgiLS1sdG8tbW9kZSIsIFwkbHRvTW9kZSkpIHsKICAgICAkbHRv
TW9kZT0iIjsKQEAgLTc4LDYgKzgxLDcgQEAgaWYgKGNoZWNrRm9yQXJndW1lbnRBbmRSZW1vdmVG
cm9tQVJHVigiLS1yZXNldCIpKSB7CiAgICAgdW5saW5rICIkYmFzZVByb2R1Y3REaXIvQXJjaGl0
ZWN0dXJlIjsKICAgICB1bmxpbmsgIiRiYXNlUHJvZHVjdERpci9BU2FuIjsKICAgICB1bmxpbmsg
IiRiYXNlUHJvZHVjdERpci9Gb3JjZU9wdGltaXphdGlvbkxldmVsIjsKKyAgICB1bmxpbmsgIiRi
YXNlUHJvZHVjdERpci9Db3ZlcmFnZSI7CiAgICAgdW5saW5rICIkYmFzZVByb2R1Y3REaXIvTFRP
IjsKICAgICBleGl0IDA7CiB9CkBAIC0xMjksNiArMTMzLDE3IEBAIGlmICgkZW5hYmxlQVNBTikg
ewogICAgIHVubGluayAiJGJhc2VQcm9kdWN0RGlyL0FTYW4iOwogfQogCitpZiAoJGVuYWJsZUNv
dmVyYWdlKQoreworICAgIG9wZW4gQ292ZXJhZ2UsICI+IiwgIiRiYXNlUHJvZHVjdERpci9Db3Zl
cmFnZSIgb3IgZGllOworICAgIHByaW50IENvdmVyYWdlICJZRVMiOworICAgIGNsb3NlIENvdmVy
YWdlOworfQorZWxzaWYgKCRkaXNhYmxlQ292ZXJhZ2UpCit7CisgICAgdW5saW5rICIkYmFzZVBy
b2R1Y3REaXIvQ292ZXJhZ2UiOworfQorCiBpZiAoJGZvcmNlT3B0aW1pemF0aW9uTGV2ZWwgJiYg
JGZvcmNlT3B0aW1pemF0aW9uTGV2ZWwgZXEgIm5vbmUiKSB7CiAgICAgdW5saW5rICIkYmFzZVBy
b2R1Y3REaXIvRm9yY2VPcHRpbWl6YXRpb25MZXZlbCI7CiB9IGVsc2lmICgkZm9yY2VPcHRpbWl6
YXRpb25MZXZlbCkgewpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRkaXJzLnBtIGIv
VG9vbHMvU2NyaXB0cy93ZWJraXRkaXJzLnBtCmluZGV4IDk2MWE0NjI4NmY0Li45ZTVkZGNkYmIz
ZiAxMDA3NTUKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRkaXJzLnBtCisrKyBiL1Rvb2xzL1Nj
cmlwdHMvd2Via2l0ZGlycy5wbQpAQCAtMTMzLDYgKzEzMyw3IEBAIG91ciBARVhQT1JUX09LOwog
bXkgJGFyY2hpdGVjdHVyZTsKIG15ICRhc2FuSXNFbmFibGVkOwogbXkgJGZvcmNlT3B0aW1pemF0
aW9uTGV2ZWw7CitteSAkY292ZXJhZ2VJc0VuYWJsZWQ7CiBteSAkbHRvTW9kZTsKIG15ICRudW1i
ZXJPZkNQVXM7CiBteSAkbWF4Q1BVTG9hZDsKQEAgLTQzNiw2ICs0MzcsMTggQEAgc3ViIGRldGVy
bWluZUZvcmNlT3B0aW1pemF0aW9uTGV2ZWwKICAgICB9CiB9CiAKK3N1YiBkZXRlcm1pbmVDb3Zl
cmFnZUlzRW5hYmxlZAoreworICAgIHJldHVybiBpZiBkZWZpbmVkICRjb3ZlcmFnZUlzRW5hYmxl
ZDsKKyAgICBkZXRlcm1pbmVCYXNlUHJvZHVjdERpcigpOworCisgICAgaWYgKG9wZW4gQ292ZXJh
Z2UsICIkYmFzZVByb2R1Y3REaXIvQ292ZXJhZ2UiKSB7CisgICAgICAgICRjb3ZlcmFnZUlzRW5h
YmxlZCA9IDxDb3ZlcmFnZT47CisgICAgICAgIGNsb3NlIENvdmVyYWdlOworICAgICAgICBjaG9t
cCAkY292ZXJhZ2VJc0VuYWJsZWQ7CisgICAgfQorfQorCiBzdWIgZGV0ZXJtaW5lTFRPTW9kZQog
ewogICAgIHJldHVybiBpZiBkZWZpbmVkICRsdG9Nb2RlOwpAQCAtODc1LDYgKzg4OCw3IEBAIHN1
YiBYY29kZU9wdGlvbnMKICAgICBkZXRlcm1pbmVBcmNoaXRlY3R1cmUoKTsKICAgICBkZXRlcm1p
bmVBU2FuSXNFbmFibGVkKCk7CiAgICAgZGV0ZXJtaW5lRm9yY2VPcHRpbWl6YXRpb25MZXZlbCgp
OworICAgIGRldGVybWluZUNvdmVyYWdlSXNFbmFibGVkKCk7CiAgICAgZGV0ZXJtaW5lTFRPTW9k
ZSgpOwogICAgIGRldGVybWluZVhjb2RlU0RLKCk7CiAKQEAgLTg4MywxMSArODk3LDE5IEBAIHN1
YiBYY29kZU9wdGlvbnMKICAgICBwdXNoIEBvcHRpb25zLCAiLVNob3dCdWlsZE9wZXJhdGlvbkR1
cmF0aW9uPVlFUyI7CiAgICAgcHVzaCBAb3B0aW9ucywgKCItY29uZmlndXJhdGlvbiIsICRjb25m
aWd1cmF0aW9uKTsKICAgICBwdXNoIEBvcHRpb25zLCAoIi14Y2NvbmZpZyIsIHNvdXJjZURpcigp
IC4gIi9Ub29scy9hc2FuL2FzYW4ueGNjb25maWciLCAiQVNBTl9JR05PUkU9IiAuIHNvdXJjZURp
cigpIC4gIi9Ub29scy9hc2FuL3dlYmtpdC1hc2FuLWlnbm9yZS50eHQiKSBpZiAkYXNhbklzRW5h
YmxlZDsKKyAgICBwdXNoIEBvcHRpb25zLCAoIi14Y2NvbmZpZyIsIHNvdXJjZURpcigpIC4gIi9U
b29scy9jb3ZlcmFnZS9jb3ZlcmFnZS54Y2NvbmZpZyIpIGlmICRjb3ZlcmFnZUlzRW5hYmxlZDsK
ICAgICBwdXNoIEBvcHRpb25zLCAoIkdDQ19PUFRJTUlaQVRJT05fTEVWRUw9JGZvcmNlT3B0aW1p
emF0aW9uTGV2ZWwiKSBpZiAkZm9yY2VPcHRpbWl6YXRpb25MZXZlbDsKICAgICBwdXNoIEBvcHRp
b25zLCAiV0tfTFRPX01PREU9JGx0b01vZGUiIGlmICRsdG9Nb2RlOwogICAgIHB1c2ggQG9wdGlv
bnMsIEBiYXNlUHJvZHVjdERpck9wdGlvbjsKICAgICBwdXNoIEBvcHRpb25zLCAiQVJDSFM9JGFy
Y2hpdGVjdHVyZSIgaWYgJGFyY2hpdGVjdHVyZTsKICAgICBwdXNoIEBvcHRpb25zLCAiU0RLUk9P
VD0keGNvZGVTREsiIGlmICR4Y29kZVNESzsKKworICAgICMgV2hlbiB0aGlzIGVudmlyb25tZW50
IHZhcmlhYmxlIGlzIHNldCBUb29scy9TY3JpcHRzL2NoZWNrLWZvci13ZWFrLXZ0YWJsZXMtYW5k
LWV4dGVybmFscworICAgICMgdHJlYXRzIGVycm9ycyBhcyBub24tZmF0YWwgd2hlbiBpdCBlbmNv
dW50ZXJzIG1pc3Npbmcgc3ltYm9scyByZWxhdGVkIHRvIGNvdmVyYWdlCisgICAgYXBwZW5kVG9F
bnZpcm9ubWVudFZhcmlhYmxlTGlzdCgiV0VCS0lUX0NPVkVSQUdFX0JVSUxEIiwgIjEiKSBpZiAk
Y292ZXJhZ2VJc0VuYWJsZWQ7CisKKyAgICBkaWUgImNhbm5vdCBlbmFibGUgYm90aCBBU0FOIGFu
ZCBDb3ZlcmFnZSBhdCB0aGlzIHRpbWVcbiIgaWYgJGNvdmVyYWdlSXNFbmFibGVkICYmICRhc2Fu
SXNFbmFibGVkOworCiAgICAgaWYgKHdpbGxVc2VJT1NEZXZpY2VTREsoKSkgewogICAgICAgICBw
dXNoIEBvcHRpb25zLCAiRU5BQkxFX0JJVENPREU9Tk8iOwogICAgICAgICBpZiAoaGFzSU9TRGV2
ZWxvcG1lbnRDZXJ0aWZpY2F0ZSgpKSB7CmRpZmYgLS1naXQgYS9Ub29scy9jb3ZlcmFnZS9jb3Zl
cmFnZS54Y2NvbmZpZyBiL1Rvb2xzL2NvdmVyYWdlL2NvdmVyYWdlLnhjY29uZmlnCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5hMmNlOTE0ZjIyZAotLS0gL2Rldi9udWxs
CisrKyBiL1Rvb2xzL2NvdmVyYWdlL2NvdmVyYWdlLnhjY29uZmlnCkBAIC0wLDAgKzEsMyBAQAor
T1RIRVJfQ0ZMQUdTID0gJChpbmhlcml0ZWQpIC1mcHJvZmlsZS1pbnN0ci1nZW5lcmF0ZSAtZmNv
dmVyYWdlLW1hcHBpbmc7CitPVEhFUl9DUExVU1BMVVNGTEFHUyA9ICQoaW5oZXJpdGVkKSAtZnBy
b2ZpbGUtaW5zdHItZ2VuZXJhdGUgLWZjb3ZlcmFnZS1tYXBwaW5nOworT1RIRVJfTERGTEFHUyA9
ICQoaW5oZXJpdGVkKSAtZnByb2ZpbGUtaW5zdHItZ2VuZXJhdGU7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>388405</attachid>
            <date>2020-01-22 00:33:21 -0800</date>
            <delta_ts>2020-01-22 09:13:11 -0800</delta_ts>
            <desc>proposed patch</desc>
            <filename>webkit_206389_d.patch</filename>
            <type>text/plain</type>
            <size>9477</size>
            <attacher name="Tuomas Karkkainen">tuomas.webkit</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvcnVuLWphdmFzY3JpcHRjb3JlLXRlc3RzIGIvVG9v
bHMvU2NyaXB0cy9ydW4tamF2YXNjcmlwdGNvcmUtdGVzdHMKaW5kZXggYzU0MmNlOWJlYzguLmE4
YmY2N2NmNmM0IDEwMDc1NQotLS0gYS9Ub29scy9TY3JpcHRzL3J1bi1qYXZhc2NyaXB0Y29yZS10
ZXN0cworKysgYi9Ub29scy9TY3JpcHRzL3J1bi1qYXZhc2NyaXB0Y29yZS10ZXN0cwpAQCAtMTAx
LDYgKzEwMSw4IEBAIG15ICR2ZXJzaW9uOwogbXkgJHZlcnNpb25OYW1lOwogbXkgJHNkazsKIG15
ICRmYWlsRmFzdCA9IDE7CitteSAkY292ZXJhZ2UgPSAwOworbXkgJGNvdmVyYWdlRGlyOwogbXkg
JWpzb25EYXRhID0gKCk7CiBteSAlcmVwb3J0RGF0YSA9ICgpOwogbXkgQHRlc3RSZXN1bHRzID0g
KCk7CkBAIC0yMTYsNiArMjE4LDcgQEAgbXkgJG1vemlsbGFUZXN0c0RlZmF1bHQgPSBkZWZhdWx0
U3RyaW5nRm9yVGVzdFN0YXRlKCRydW5Nb3ppbGxhVGVzdHMpOwogbXkgJGppdFN0cmVzc1Rlc3Rz
RGVmYXVsdCA9ICRydW5KSVRTdHJlc3NUZXN0cyA/ICJ3aWxsIHJ1biIgOiAiIHdpbGwgbm90IHJ1
biI7CiBteSAkcXVpY2tNb2RlRGVmYXVsdCA9ICRydW5RdWlja01vZGUgPyAic29tZSIgOiAiYWxs
IjsKIG15ICRmYWlsRmFzdERlZmF1bHQgPSAkZmFpbEZhc3QgPyAiZmFpbCBmYXN0IiA6ICJkb24n
dCBmYWlsIGZhc3QiOworbXkgJGNvdmVyYWdlRGVmYXVsdCA9ICRjb3ZlcmFnZSA/ICJjb3ZlcmFn
ZSBlbmFibGVkIiA6ICJjb3ZlcmFnZSBkaXNhYmxlZCI7CiBteSAkY29weUpTQ0RlZmF1bHQgPSAk
Y29weUpTQyA/ICJjb3B5IiA6ICJkbyBub3QgY29weSI7CiBteSAkZmlsdGVyOwogbXkgJHVzYWdl
ID0gPDxFT0Y7CkBAIC0yMzksNiArMjQyLDggQEAgVXNhZ2U6ICRwcm9ncmFtTmFtZSBbb3B0aW9u
c10gW29wdGlvbnMgdG8gcGFzcyB0byBidWlsZCBzeXN0ZW1dCiAgIC0tW25vLV1mYWlsLWZhc3Qg
ICAgICAgICAgICAgIFN0b3AgdGhpcyBzY3JpcHQgd2hlbiBhIHRlc3QgZmFtaWx5IHJlcG9ydHMg
YW4gZXJyb3Igb3IgZmFpbHVyZSAoZGVmYXVsdDogJGZhaWxGYXN0RGVmYXVsdCkKICAgLS1bbm8t
XWZvcmNlLWNvbGxlY3RDb250aW51b3VzbHkgRW5hYmxlIHRoZSBjb2xsZWN0Q29udGludW91c2x5
IG1vZGUgZXZlbiBpZiBpdCB3YXMgZGlzYWJsZWQgb24gdGhpcyBwbGF0Zm9ybS4KICAgLS1bbm8t
XWNvcHkgICAgICAgICAgICAgICAgICAgQ29weSAob3IgZG9uJ3QgY29weSkgdGhlIEphdmFTY3Jp
cHRDb3JlIGJ1aWxkIHByb2R1Y3QgYmVmb3JlIHRlc3RpbmcgKGRlZmF1bHQ6ICRjb3B5SlNDRGVm
YXVsdCkKKyAgLS1bbm8tXWNvdmVyYWdlICAgICAgICAgICAgICAgRW5hYmxlIChvciBkaXNhYmxl
KSBMTFZNIFNvdXJjZS1iYXNlZCBDb2RlIENvdmVyYWdlIGluc3RydW1lbnRhdGlvbiBmb3IgdGhl
IHRlc3QgcnVuIChkZWZhdWx0OiAkY292ZXJhZ2VEZWZhdWx0KS4KKyAgLS1jb3ZlcmFnZS1kaXI9
ICAgICAgICAgICAgICAgT3V0cHV0IHBhdGggZm9yIExMVk0gU291cmNlLWJhc2VkIENvZGUgQ292
ZXJhZ2UgaW5zdHJ1bWVudGF0aW9uIChkZWZhdWx0OiBhIHRlbXBvcmFyeSBkaXJlY3RvcnkpLgog
ICAtLWpzb24tb3V0cHV0PSAgICAgICAgICAgICAgICBDcmVhdGUgYSBmaWxlIGF0IHNwZWNpZmll
ZCBwYXRoLCBsaXN0aW5nIGZhaWxlZCBzdHJlc3MgdGVzdHMgaW4gSlNPTiBmb3JtYXQuCiAgIC0t
dGFyYmFsbCAgICAgICAgICAgICAgICAgICAgIENyZWF0ZSBhIHRhcmJhbGwgb2YgdGhlIGJ1bmRs
ZSBwcm9kdWNlZCBieSBydW5uaW5nIHRoZSBKU0Mgc3RyZXNzIHRlc3RzLgogICAtLXJlbW90ZT0g
ICAgICAgICAgICAgICAgICAgICBSdW4gdGhlIEpTQyBzdHJlc3MgdGVzdHMgb24gdGhlIHNwZWNp
ZmllZCByZW1vdGUgaG9zdC4gSW1wbGllcyAtLXRhcmJhbGwuCkBAIC0zMDcsNiArMzEyLDggQEAg
R2V0T3B0aW9ucygKICAgICAnZmFpbC1mYXN0IScgPT4gXCRmYWlsRmFzdCwKICAgICAnZm9yY2Ut
Y29sbGVjdENvbnRpbnVvdXNseSEnID0+IFwkZm9yY2VDb2xsZWN0Q29udGludW91c2x5LAogICAg
ICdjb3B5IScgPT4gXCRjb3B5SlNDLAorICAgICdjb3ZlcmFnZSEnID0+IFwkY292ZXJhZ2UsCisg
ICAgJ2NvdmVyYWdlLWRpcj1zJyA9PiBcJGNvdmVyYWdlRGlyLAogICAgICdqc29uLW91dHB1dD1z
JyA9PiBcJGpzb25GaWxlTmFtZSwKICAgICAndGFyYmFsbCEnID0+IFwkY3JlYXRlVGFyYmFsbCwK
ICAgICAncmVtb3RlPXMnID0+IFwkcmVtb3RlSG9zdCwKQEAgLTQ5MCw2ICs0OTcsMzIgQEAgaWYg
KGRlZmluZWQoJGdtYWxsb2NQYXRoKSkgewogICAgIH0KIH0KIAorbXkgJGh0bWxEaXI7CitteSAk
cHJvZmRhdGFQYXRoOworCitpZiAoJGNvdmVyYWdlKQoreworICAgIGlmICgkY292ZXJhZ2VEaXIp
CisgICAgeworICAgICAgICBwcmludCAiVXNpbmcgb3V0cHV0IHBhdGggc3BlY2lmaWVkIG9uIHRo
ZSBjb21tYW5kIGxpbmUgZm9yIGNvdmVyYWdlIGRhdGE6ICRjb3ZlcmFnZURpclxuIjsKKyAgICB9
CisgICAgZWxzZQorICAgIHsKKyAgICAgICAgJGNvdmVyYWdlRGlyID0gdGVtcGRpcigpOworICAg
ICAgICBwcmludCAiR2VuZXJhdGluZyBjb3ZlcmFnZSBkYXRhIGludG8gJGNvdmVyYWdlRGlyXG4i
OworICAgIH0KKyAgICAkaHRtbERpciA9IEZpbGU6OlNwZWMtPmNhdGZpbGUoJGNvdmVyYWdlRGly
LCAiaHRtbF9yZXBvcnQiKTsKKyAgICAkcHJvZmRhdGFQYXRoID0gRmlsZTo6U3BlYy0+Y2F0Zmls
ZSgkY292ZXJhZ2VEaXIsICJqc2NfdGVzdHMucHJvZmRhdGEiKTsKKyAgICAkZW52VmFycyAuPSAg
IiBMTFZNX1BST0ZJTEVfRklMRT0iIC4gRmlsZTo6U3BlYy0+Y2F0ZmlsZSgkY292ZXJhZ2VEaXIs
ICJqc2NfdGVzdF8lOW0ucHJvZnJhdyIpOworfQorZWxzZQoreworICAgIGlmICgkY292ZXJhZ2VE
aXIpCisgICAgeworICAgICAgICBkaWUgIi0tY292ZXJhZ2UtZGlyPSBpcyBzZXQgYnV0IC0tY292
ZXJhZ2UgaXMgbm90IHNldFxuIgorICAgIH0KK30KKwogbXkgJHByb2R1Y3REaXIgPSBqc2NQcm9k
dWN0RGlyKCk7CiAkRU5We0RZTERfRlJBTUVXT1JLX1BBVEh9ID0gJHByb2R1Y3REaXI7CiAkRU5W
e0pTQ1RFU1RfdGltZW91dH0gPSAxMjAgdW5sZXNzICRFTlZ7SlNDVEVTVF90aW1lb3V0fTsgIyBT
ZXQgYSAxMjAgc2Vjb25kIHRpbWVvdXQgb24gYWxsIGpzYyB0ZXN0cyAoaWYgZW52aXJvbm1lbnQg
dmFyaWFibGUgbm90IGRlZmluZWQgYWxyZWFkeSkuCkBAIC02MzgsNiArNjcxLDM3IEBAIHN1YiBy
ZXBvcnRUZXN0RmFpbHVyZXMgewogICBwcmludCAiXG4iOwogfQogCitzdWIgY29udmVydFByb2Zy
YXdUb1Byb2ZkYXRhCit7CisgICAgcHJpbnQgIkNvbnZlcnRpbmcgcHJvZnJhdyBmaWxlcyB0byBw
cm9mZGF0YS5cbiI7CisgICAgbXkgQGNvbW1hbmQ7CisgICAgb3BlbmRpcihQUk9GUkFXUywgJGNv
dmVyYWdlRGlyKTsKKyAgICBteSBAcHJvZnJhd0ZpbGVzID0gZ3JlcCB7L2pzY190ZXN0Xy4qXC5w
cm9mcmF3L30gbWFwIHtGaWxlOjpTcGVjLT5jYXRmaWxlKCRjb3ZlcmFnZURpciwgJF8pfSByZWFk
ZGlyKFBST0ZSQVdTKTsKKyAgICBjbG9zZShQUk9GUkFXUyk7CisgICAgcHVzaCBAY29tbWFuZCwg
InhjcnVuIjsKKyAgICBwdXNoIEBjb21tYW5kLCAoIi1zZGsiLCB4Y29kZVNESygpKSBpZiB4Y29k
ZVNESygpOworICAgIHB1c2ggQGNvbW1hbmQsICJsbHZtLXByb2ZkYXRhIiwgIm1lcmdlIiwgQHBy
b2ZyYXdGaWxlcywgIi1vIiwgJHByb2ZkYXRhUGF0aDsKKyAgICBzeXN0ZW0oQGNvbW1hbmQpOwor
fQorCitzdWIgZ2VuZXJhdGVIVE1MRnJvbVByb2ZkYXRhCit7CisgICAgcHJpbnQgIkdlbmVyYXRp
bmcgaHRtbCByZXBvcnQgZnJvbSBwcm9mZGF0YSBmaWxlLlxuIjsKKyAgICBteSBAY29tbWFuZDsK
KyAgICBwdXNoIEBjb21tYW5kLCAieGNydW4iOworICAgIHB1c2ggQGNvbW1hbmQsICgiLXNkayIs
IHhjb2RlU0RLKCkpIGlmIHhjb2RlU0RLKCk7CisgICAgcHVzaCBAY29tbWFuZCwgImxsdm0tY292
IiwgInNob3ciLCBidWlsdER5bGliUGF0aEZvck5hbWUoIkphdmFTY3JpcHRDb3JlIiksICItLWZv
cm1hdD1odG1sIiwgIi0taW5zdHItcHJvZmlsZT0iIC4gJHByb2ZkYXRhUGF0aCwgIi0tb3V0cHV0
LWRpcj0iIC4gJGh0bWxEaXI7CisgICAgc3lzdGVtKEBjb21tYW5kKTsKKworICAgIHByaW50ICJI
VE1MIHJlcG9ydCBpcyBpbiBmaWxlOi8vJGh0bWxEaXIvaW5kZXguaHRtbFxuIjsKK30KKworc3Vi
IHByb2Nlc3NDb3ZlcmFnZURhdGEKK3sKKyAgICBjb252ZXJ0UHJvZnJhd1RvUHJvZmRhdGEoKTsK
KyAgICBnZW5lcmF0ZUhUTUxGcm9tUHJvZmRhdGEoKTsKK30KKwogaWYgKCRydW5UZXN0TWFzbSkg
eyBydW5UZXN0KCJ0ZXN0bWFzbSIsICJhbGxNYXNtVGVzdHNQYXNzZWQiKSB9CiBpZiAoJHJ1blRl
c3RBaXIpIHsgcnVuVGVzdCgidGVzdGFpciIsICJhbGxBaXJUZXN0c1Bhc3NlZCIpIH0KIGlmICgk
cnVuVGVzdEIzKSB7IHJ1blRlc3QoInRlc3RiMyIsICJhbGxCM1Rlc3RzUGFzc2VkIikgfQpAQCAt
NjUxLDYgKzcxNSwxMCBAQCBjaGRpcldlYktpdCgpOwogIyBGSVhNRTogcmVwb3J0IHN0cmVzcyB0
ZXN0IGZhaWx1cmVzIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDQw
OTYKIHJ1bkpTQ1N0cmVzc1Rlc3RzKCk7CiByZXBvcnRUZXN0RmFpbHVyZXMoKTsKK2lmICgkY292
ZXJhZ2UpCit7CisgICAgcHJvY2Vzc0NvdmVyYWdlRGF0YSgpOworfQogCiAkZW5kVGltZSA9IHRp
bWUoKTsKIHVwbG9hZFJlc3VsdHMoKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvc2V0LXdl
YmtpdC1jb25maWd1cmF0aW9uIGIvVG9vbHMvU2NyaXB0cy9zZXQtd2Via2l0LWNvbmZpZ3VyYXRp
b24KaW5kZXggZDdjNjhkMjY2YTEuLjc0MTFkMDUzNjhlIDEwMDc1NQotLS0gYS9Ub29scy9TY3Jp
cHRzL3NldC13ZWJraXQtY29uZmlndXJhdGlvbgorKysgYi9Ub29scy9TY3JpcHRzL3NldC13ZWJr
aXQtY29uZmlndXJhdGlvbgpAQCAtMzgsNiArMzgsNyBAQCBVc2FnZTogJHByb2dyYW1OYW1lIFtv
cHRpb25zXQogICAtLTMyLWJpdCAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgZGVm
YXVsdCBhcmNoaXRlY3R1cmUgdG8gMzItYml0CiAgIC0tNjQtYml0ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgU2V0IHRoZSBkZWZhdWx0IGFyY2hpdGVjdHVyZSB0byA2NC1iaXQKICAgLS1bbm8t
XWFzYW4gICAgICAgICAgICAgICAgICAgICAgICBFbmFibGUgb3IgZGlzYWJsZSBjbGFuZyBhZGRy
ZXNzIHNhbml0aXplcgorICAtLVtuby1dY292ZXJhZ2UgICAgICAgICAgICAgICAgICAgIEVuYWJs
ZSBvciBkaXNhYmxlIExMVk0gU291cmNlLWJhc2VkIENvZGUgQ292ZXJhZ2UKICAgLS1mb3JjZS1v
cHRpbWl6YXRpb24tbGV2ZWw9PGxldmVsPiBPcHRpbWl6YXRpb24gbGV2ZWw6IE8zLCBPMiwgTzEs
IE8wLCBPcywgT2Zhc3QsIE9nLCBvciBub25lCiAgIC0tbHRvLW1vZGU9PG1vZGU+ICAgICAgICAg
ICAgICAgICAgU2V0IExUTyBtb2RlOiBmdWxsLCB0aGluLCBvciBub25lCiAgIC0tZGVidWcgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBkZWZhdWx0IGNvbmZpZ3VyYXRpb24gdG8g
ZGVidWcKQEAgLTQ5LDYgKzUwLDggQEAgbXkgJGNvbmZpZ3VyYXRpb24gPSBwYXNzZWRDb25maWd1
cmF0aW9uKCk7CiBteSAkYXJjaGl0ZWN0dXJlID0gcGFzc2VkQXJjaGl0ZWN0dXJlKCk7CiBteSAk
ZW5hYmxlQVNBTiA9IGNoZWNrRm9yQXJndW1lbnRBbmRSZW1vdmVGcm9tQVJHVigiLS1hc2FuIik7
CiBteSAkZGlzYWJsZUFTQU4gPSBjaGVja0ZvckFyZ3VtZW50QW5kUmVtb3ZlRnJvbUFSR1YoIi0t
bm8tYXNhbiIpOworbXkgJGVuYWJsZUNvdmVyYWdlID0gY2hlY2tGb3JBcmd1bWVudEFuZFJlbW92
ZUZyb21BUkdWKCItLWNvdmVyYWdlIik7CitteSAkZGlzYWJsZUNvdmVyYWdlID0gY2hlY2tGb3JB
cmd1bWVudEFuZFJlbW92ZUZyb21BUkdWKCItLW5vLWNvdmVyYWdlIik7CiBteSAkbHRvTW9kZTsK
IGlmICghY2hlY2tGb3JBcmd1bWVudEFuZFJlbW92ZUZyb21BUkdWR2V0dGluZ1ZhbHVlKCItLWx0
by1tb2RlIiwgXCRsdG9Nb2RlKSkgewogICAgICRsdG9Nb2RlPSIiOwpAQCAtNzgsNiArODEsNyBA
QCBpZiAoY2hlY2tGb3JBcmd1bWVudEFuZFJlbW92ZUZyb21BUkdWKCItLXJlc2V0IikpIHsKICAg
ICB1bmxpbmsgIiRiYXNlUHJvZHVjdERpci9BcmNoaXRlY3R1cmUiOwogICAgIHVubGluayAiJGJh
c2VQcm9kdWN0RGlyL0FTYW4iOwogICAgIHVubGluayAiJGJhc2VQcm9kdWN0RGlyL0ZvcmNlT3B0
aW1pemF0aW9uTGV2ZWwiOworICAgIHVubGluayAiJGJhc2VQcm9kdWN0RGlyL0NvdmVyYWdlIjsK
ICAgICB1bmxpbmsgIiRiYXNlUHJvZHVjdERpci9MVE8iOwogICAgIGV4aXQgMDsKIH0KQEAgLTEy
OSw2ICsxMzMsMTcgQEAgaWYgKCRlbmFibGVBU0FOKSB7CiAgICAgdW5saW5rICIkYmFzZVByb2R1
Y3REaXIvQVNhbiI7CiB9CiAKK2lmICgkZW5hYmxlQ292ZXJhZ2UpCit7CisgICAgb3BlbiBDb3Zl
cmFnZSwgIj4iLCAiJGJhc2VQcm9kdWN0RGlyL0NvdmVyYWdlIiBvciBkaWU7CisgICAgcHJpbnQg
Q292ZXJhZ2UgIllFUyI7CisgICAgY2xvc2UgQ292ZXJhZ2U7Cit9CitlbHNpZiAoJGRpc2FibGVD
b3ZlcmFnZSkKK3sKKyAgICB1bmxpbmsgIiRiYXNlUHJvZHVjdERpci9Db3ZlcmFnZSI7Cit9CisK
IGlmICgkZm9yY2VPcHRpbWl6YXRpb25MZXZlbCAmJiAkZm9yY2VPcHRpbWl6YXRpb25MZXZlbCBl
cSAibm9uZSIpIHsKICAgICB1bmxpbmsgIiRiYXNlUHJvZHVjdERpci9Gb3JjZU9wdGltaXphdGlv
bkxldmVsIjsKIH0gZWxzaWYgKCRmb3JjZU9wdGltaXphdGlvbkxldmVsKSB7CmRpZmYgLS1naXQg
YS9Ub29scy9TY3JpcHRzL3dlYmtpdGRpcnMucG0gYi9Ub29scy9TY3JpcHRzL3dlYmtpdGRpcnMu
cG0KaW5kZXggOTYxYTQ2Mjg2ZjQuLjllNWRkY2RiYjNmIDEwMDc1NQotLS0gYS9Ub29scy9TY3Jp
cHRzL3dlYmtpdGRpcnMucG0KKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRkaXJzLnBtCkBAIC0x
MzMsNiArMTMzLDcgQEAgb3VyIEBFWFBPUlRfT0s7CiBteSAkYXJjaGl0ZWN0dXJlOwogbXkgJGFz
YW5Jc0VuYWJsZWQ7CiBteSAkZm9yY2VPcHRpbWl6YXRpb25MZXZlbDsKK215ICRjb3ZlcmFnZUlz
RW5hYmxlZDsKIG15ICRsdG9Nb2RlOwogbXkgJG51bWJlck9mQ1BVczsKIG15ICRtYXhDUFVMb2Fk
OwpAQCAtNDM2LDYgKzQzNywxOCBAQCBzdWIgZGV0ZXJtaW5lRm9yY2VPcHRpbWl6YXRpb25MZXZl
bAogICAgIH0KIH0KIAorc3ViIGRldGVybWluZUNvdmVyYWdlSXNFbmFibGVkCit7CisgICAgcmV0
dXJuIGlmIGRlZmluZWQgJGNvdmVyYWdlSXNFbmFibGVkOworICAgIGRldGVybWluZUJhc2VQcm9k
dWN0RGlyKCk7CisKKyAgICBpZiAob3BlbiBDb3ZlcmFnZSwgIiRiYXNlUHJvZHVjdERpci9Db3Zl
cmFnZSIpIHsKKyAgICAgICAgJGNvdmVyYWdlSXNFbmFibGVkID0gPENvdmVyYWdlPjsKKyAgICAg
ICAgY2xvc2UgQ292ZXJhZ2U7CisgICAgICAgIGNob21wICRjb3ZlcmFnZUlzRW5hYmxlZDsKKyAg
ICB9Cit9CisKIHN1YiBkZXRlcm1pbmVMVE9Nb2RlCiB7CiAgICAgcmV0dXJuIGlmIGRlZmluZWQg
JGx0b01vZGU7CkBAIC04NzUsNiArODg4LDcgQEAgc3ViIFhjb2RlT3B0aW9ucwogICAgIGRldGVy
bWluZUFyY2hpdGVjdHVyZSgpOwogICAgIGRldGVybWluZUFTYW5Jc0VuYWJsZWQoKTsKICAgICBk
ZXRlcm1pbmVGb3JjZU9wdGltaXphdGlvbkxldmVsKCk7CisgICAgZGV0ZXJtaW5lQ292ZXJhZ2VJ
c0VuYWJsZWQoKTsKICAgICBkZXRlcm1pbmVMVE9Nb2RlKCk7CiAgICAgZGV0ZXJtaW5lWGNvZGVT
REsoKTsKIApAQCAtODgzLDExICs4OTcsMTkgQEAgc3ViIFhjb2RlT3B0aW9ucwogICAgIHB1c2gg
QG9wdGlvbnMsICItU2hvd0J1aWxkT3BlcmF0aW9uRHVyYXRpb249WUVTIjsKICAgICBwdXNoIEBv
cHRpb25zLCAoIi1jb25maWd1cmF0aW9uIiwgJGNvbmZpZ3VyYXRpb24pOwogICAgIHB1c2ggQG9w
dGlvbnMsICgiLXhjY29uZmlnIiwgc291cmNlRGlyKCkgLiAiL1Rvb2xzL2FzYW4vYXNhbi54Y2Nv
bmZpZyIsICJBU0FOX0lHTk9SRT0iIC4gc291cmNlRGlyKCkgLiAiL1Rvb2xzL2FzYW4vd2Via2l0
LWFzYW4taWdub3JlLnR4dCIpIGlmICRhc2FuSXNFbmFibGVkOworICAgIHB1c2ggQG9wdGlvbnMs
ICgiLXhjY29uZmlnIiwgc291cmNlRGlyKCkgLiAiL1Rvb2xzL2NvdmVyYWdlL2NvdmVyYWdlLnhj
Y29uZmlnIikgaWYgJGNvdmVyYWdlSXNFbmFibGVkOwogICAgIHB1c2ggQG9wdGlvbnMsICgiR0ND
X09QVElNSVpBVElPTl9MRVZFTD0kZm9yY2VPcHRpbWl6YXRpb25MZXZlbCIpIGlmICRmb3JjZU9w
dGltaXphdGlvbkxldmVsOwogICAgIHB1c2ggQG9wdGlvbnMsICJXS19MVE9fTU9ERT0kbHRvTW9k
ZSIgaWYgJGx0b01vZGU7CiAgICAgcHVzaCBAb3B0aW9ucywgQGJhc2VQcm9kdWN0RGlyT3B0aW9u
OwogICAgIHB1c2ggQG9wdGlvbnMsICJBUkNIUz0kYXJjaGl0ZWN0dXJlIiBpZiAkYXJjaGl0ZWN0
dXJlOwogICAgIHB1c2ggQG9wdGlvbnMsICJTREtST09UPSR4Y29kZVNESyIgaWYgJHhjb2RlU0RL
OworCisgICAgIyBXaGVuIHRoaXMgZW52aXJvbm1lbnQgdmFyaWFibGUgaXMgc2V0IFRvb2xzL1Nj
cmlwdHMvY2hlY2stZm9yLXdlYWstdnRhYmxlcy1hbmQtZXh0ZXJuYWxzCisgICAgIyB0cmVhdHMg
ZXJyb3JzIGFzIG5vbi1mYXRhbCB3aGVuIGl0IGVuY291bnRlcnMgbWlzc2luZyBzeW1ib2xzIHJl
bGF0ZWQgdG8gY292ZXJhZ2UKKyAgICBhcHBlbmRUb0Vudmlyb25tZW50VmFyaWFibGVMaXN0KCJX
RUJLSVRfQ09WRVJBR0VfQlVJTEQiLCAiMSIpIGlmICRjb3ZlcmFnZUlzRW5hYmxlZDsKKworICAg
IGRpZSAiY2Fubm90IGVuYWJsZSBib3RoIEFTQU4gYW5kIENvdmVyYWdlIGF0IHRoaXMgdGltZVxu
IiBpZiAkY292ZXJhZ2VJc0VuYWJsZWQgJiYgJGFzYW5Jc0VuYWJsZWQ7CisKICAgICBpZiAod2ls
bFVzZUlPU0RldmljZVNESygpKSB7CiAgICAgICAgIHB1c2ggQG9wdGlvbnMsICJFTkFCTEVfQklU
Q09ERT1OTyI7CiAgICAgICAgIGlmIChoYXNJT1NEZXZlbG9wbWVudENlcnRpZmljYXRlKCkpIHsK
ZGlmZiAtLWdpdCBhL1Rvb2xzL2NvdmVyYWdlL2NvdmVyYWdlLnhjY29uZmlnIGIvVG9vbHMvY292
ZXJhZ2UvY292ZXJhZ2UueGNjb25maWcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAuLmEyY2U5MTRmMjJkCi0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvY292ZXJhZ2UvY292
ZXJhZ2UueGNjb25maWcKQEAgLTAsMCArMSwzIEBACitPVEhFUl9DRkxBR1MgPSAkKGluaGVyaXRl
ZCkgLWZwcm9maWxlLWluc3RyLWdlbmVyYXRlIC1mY292ZXJhZ2UtbWFwcGluZzsKK09USEVSX0NQ
TFVTUExVU0ZMQUdTID0gJChpbmhlcml0ZWQpIC1mcHJvZmlsZS1pbnN0ci1nZW5lcmF0ZSAtZmNv
dmVyYWdlLW1hcHBpbmc7CitPVEhFUl9MREZMQUdTID0gJChpbmhlcml0ZWQpIC1mcHJvZmlsZS1p
bnN0ci1nZW5lcmF0ZTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>388427</attachid>
            <date>2020-01-22 09:13:11 -0800</date>
            <delta_ts>2020-01-22 11:27:12 -0800</delta_ts>
            <desc>proposed patch</desc>
            <filename>webkit_206389_e.patch</filename>
            <type>text/plain</type>
            <size>10208</size>
            <attacher name="Tuomas Karkkainen">tuomas.webkit</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA2ZDQx
ZTc3MzcyMi4uMzA5MjY1MjZiYjcgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9U
b29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMC0wMS0yMiAgVHVvbWFzIEthcmtr
YWluZW4gIDx0dW9tYXMud2Via2l0QGFwcGxlLmNvbT4KKworICAgICAgICBJdCBzaG91bGQgYmUg
cG9zc2libGUgdG8gYnVpbGQgSmF2YVNjcmlwdENvcmUgd2l0aCBMTFZNIFNvdXJjZS1iYXNlZCBD
b2RlIENvdmVyYWdlLCBydW4gdGhlIHRlc3RzIGFuZCBzZWUgdGhlIGNvdmVyYWdlIGRhdGEKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNjM4OQorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2NyaXB0cy9y
dW4tamF2YXNjcmlwdGNvcmUtdGVzdHM6CisgICAgICAgICogU2NyaXB0cy9zZXQtd2Via2l0LWNv
bmZpZ3VyYXRpb246CisgICAgICAgICogU2NyaXB0cy93ZWJraXRkaXJzLnBtOgorICAgICAgICAq
IGNvdmVyYWdlL2NvdmVyYWdlLnhjY29uZmlnOiBBZGRlZC4KKwogMjAyMC0wMS0yMCAgU2FtIFdl
aW5pZyAgPHdlaW5pZ0BhcHBsZS5jb20+CiAKICAgICAgICAgUGxhdGZvcm0uaCBpcyBvdXQgb2Yg
Y29udHJvbCBQYXJ0IDg6IE1hY3JvcyBhcmUgdXNlZCBpbmNvbnNpc3RlbnRseQpkaWZmIC0tZ2l0
IGEvVG9vbHMvU2NyaXB0cy9ydW4tamF2YXNjcmlwdGNvcmUtdGVzdHMgYi9Ub29scy9TY3JpcHRz
L3J1bi1qYXZhc2NyaXB0Y29yZS10ZXN0cwppbmRleCBjNTQyY2U5YmVjOC4uYThiZjY3Y2Y2YzQg
MTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvcnVuLWphdmFzY3JpcHRjb3JlLXRlc3RzCisrKyBi
L1Rvb2xzL1NjcmlwdHMvcnVuLWphdmFzY3JpcHRjb3JlLXRlc3RzCkBAIC0xMDEsNiArMTAxLDgg
QEAgbXkgJHZlcnNpb247CiBteSAkdmVyc2lvbk5hbWU7CiBteSAkc2RrOwogbXkgJGZhaWxGYXN0
ID0gMTsKK215ICRjb3ZlcmFnZSA9IDA7CitteSAkY292ZXJhZ2VEaXI7CiBteSAlanNvbkRhdGEg
PSAoKTsKIG15ICVyZXBvcnREYXRhID0gKCk7CiBteSBAdGVzdFJlc3VsdHMgPSAoKTsKQEAgLTIx
Niw2ICsyMTgsNyBAQCBteSAkbW96aWxsYVRlc3RzRGVmYXVsdCA9IGRlZmF1bHRTdHJpbmdGb3JU
ZXN0U3RhdGUoJHJ1bk1vemlsbGFUZXN0cyk7CiBteSAkaml0U3RyZXNzVGVzdHNEZWZhdWx0ID0g
JHJ1bkpJVFN0cmVzc1Rlc3RzID8gIndpbGwgcnVuIiA6ICIgd2lsbCBub3QgcnVuIjsKIG15ICRx
dWlja01vZGVEZWZhdWx0ID0gJHJ1blF1aWNrTW9kZSA/ICJzb21lIiA6ICJhbGwiOwogbXkgJGZh
aWxGYXN0RGVmYXVsdCA9ICRmYWlsRmFzdCA/ICJmYWlsIGZhc3QiIDogImRvbid0IGZhaWwgZmFz
dCI7CitteSAkY292ZXJhZ2VEZWZhdWx0ID0gJGNvdmVyYWdlID8gImNvdmVyYWdlIGVuYWJsZWQi
IDogImNvdmVyYWdlIGRpc2FibGVkIjsKIG15ICRjb3B5SlNDRGVmYXVsdCA9ICRjb3B5SlNDID8g
ImNvcHkiIDogImRvIG5vdCBjb3B5IjsKIG15ICRmaWx0ZXI7CiBteSAkdXNhZ2UgPSA8PEVPRjsK
QEAgLTIzOSw2ICsyNDIsOCBAQCBVc2FnZTogJHByb2dyYW1OYW1lIFtvcHRpb25zXSBbb3B0aW9u
cyB0byBwYXNzIHRvIGJ1aWxkIHN5c3RlbV0KICAgLS1bbm8tXWZhaWwtZmFzdCAgICAgICAgICAg
ICAgU3RvcCB0aGlzIHNjcmlwdCB3aGVuIGEgdGVzdCBmYW1pbHkgcmVwb3J0cyBhbiBlcnJvciBv
ciBmYWlsdXJlIChkZWZhdWx0OiAkZmFpbEZhc3REZWZhdWx0KQogICAtLVtuby1dZm9yY2UtY29s
bGVjdENvbnRpbnVvdXNseSBFbmFibGUgdGhlIGNvbGxlY3RDb250aW51b3VzbHkgbW9kZSBldmVu
IGlmIGl0IHdhcyBkaXNhYmxlZCBvbiB0aGlzIHBsYXRmb3JtLgogICAtLVtuby1dY29weSAgICAg
ICAgICAgICAgICAgICBDb3B5IChvciBkb24ndCBjb3B5KSB0aGUgSmF2YVNjcmlwdENvcmUgYnVp
bGQgcHJvZHVjdCBiZWZvcmUgdGVzdGluZyAoZGVmYXVsdDogJGNvcHlKU0NEZWZhdWx0KQorICAt
LVtuby1dY292ZXJhZ2UgICAgICAgICAgICAgICBFbmFibGUgKG9yIGRpc2FibGUpIExMVk0gU291
cmNlLWJhc2VkIENvZGUgQ292ZXJhZ2UgaW5zdHJ1bWVudGF0aW9uIGZvciB0aGUgdGVzdCBydW4g
KGRlZmF1bHQ6ICRjb3ZlcmFnZURlZmF1bHQpLgorICAtLWNvdmVyYWdlLWRpcj0gICAgICAgICAg
ICAgICBPdXRwdXQgcGF0aCBmb3IgTExWTSBTb3VyY2UtYmFzZWQgQ29kZSBDb3ZlcmFnZSBpbnN0
cnVtZW50YXRpb24gKGRlZmF1bHQ6IGEgdGVtcG9yYXJ5IGRpcmVjdG9yeSkuCiAgIC0tanNvbi1v
dXRwdXQ9ICAgICAgICAgICAgICAgIENyZWF0ZSBhIGZpbGUgYXQgc3BlY2lmaWVkIHBhdGgsIGxp
c3RpbmcgZmFpbGVkIHN0cmVzcyB0ZXN0cyBpbiBKU09OIGZvcm1hdC4KICAgLS10YXJiYWxsICAg
ICAgICAgICAgICAgICAgICAgQ3JlYXRlIGEgdGFyYmFsbCBvZiB0aGUgYnVuZGxlIHByb2R1Y2Vk
IGJ5IHJ1bm5pbmcgdGhlIEpTQyBzdHJlc3MgdGVzdHMuCiAgIC0tcmVtb3RlPSAgICAgICAgICAg
ICAgICAgICAgIFJ1biB0aGUgSlNDIHN0cmVzcyB0ZXN0cyBvbiB0aGUgc3BlY2lmaWVkIHJlbW90
ZSBob3N0LiBJbXBsaWVzIC0tdGFyYmFsbC4KQEAgLTMwNyw2ICszMTIsOCBAQCBHZXRPcHRpb25z
KAogICAgICdmYWlsLWZhc3QhJyA9PiBcJGZhaWxGYXN0LAogICAgICdmb3JjZS1jb2xsZWN0Q29u
dGludW91c2x5IScgPT4gXCRmb3JjZUNvbGxlY3RDb250aW51b3VzbHksCiAgICAgJ2NvcHkhJyA9
PiBcJGNvcHlKU0MsCisgICAgJ2NvdmVyYWdlIScgPT4gXCRjb3ZlcmFnZSwKKyAgICAnY292ZXJh
Z2UtZGlyPXMnID0+IFwkY292ZXJhZ2VEaXIsCiAgICAgJ2pzb24tb3V0cHV0PXMnID0+IFwkanNv
bkZpbGVOYW1lLAogICAgICd0YXJiYWxsIScgPT4gXCRjcmVhdGVUYXJiYWxsLAogICAgICdyZW1v
dGU9cycgPT4gXCRyZW1vdGVIb3N0LApAQCAtNDkwLDYgKzQ5NywzMiBAQCBpZiAoZGVmaW5lZCgk
Z21hbGxvY1BhdGgpKSB7CiAgICAgfQogfQogCitteSAkaHRtbERpcjsKK215ICRwcm9mZGF0YVBh
dGg7CisKK2lmICgkY292ZXJhZ2UpCit7CisgICAgaWYgKCRjb3ZlcmFnZURpcikKKyAgICB7Cisg
ICAgICAgIHByaW50ICJVc2luZyBvdXRwdXQgcGF0aCBzcGVjaWZpZWQgb24gdGhlIGNvbW1hbmQg
bGluZSBmb3IgY292ZXJhZ2UgZGF0YTogJGNvdmVyYWdlRGlyXG4iOworICAgIH0KKyAgICBlbHNl
CisgICAgeworICAgICAgICAkY292ZXJhZ2VEaXIgPSB0ZW1wZGlyKCk7CisgICAgICAgIHByaW50
ICJHZW5lcmF0aW5nIGNvdmVyYWdlIGRhdGEgaW50byAkY292ZXJhZ2VEaXJcbiI7CisgICAgfQor
ICAgICRodG1sRGlyID0gRmlsZTo6U3BlYy0+Y2F0ZmlsZSgkY292ZXJhZ2VEaXIsICJodG1sX3Jl
cG9ydCIpOworICAgICRwcm9mZGF0YVBhdGggPSBGaWxlOjpTcGVjLT5jYXRmaWxlKCRjb3ZlcmFn
ZURpciwgImpzY190ZXN0cy5wcm9mZGF0YSIpOworICAgICRlbnZWYXJzIC49ICAiIExMVk1fUFJP
RklMRV9GSUxFPSIgLiBGaWxlOjpTcGVjLT5jYXRmaWxlKCRjb3ZlcmFnZURpciwgImpzY190ZXN0
XyU5bS5wcm9mcmF3Iik7Cit9CitlbHNlCit7CisgICAgaWYgKCRjb3ZlcmFnZURpcikKKyAgICB7
CisgICAgICAgIGRpZSAiLS1jb3ZlcmFnZS1kaXI9IGlzIHNldCBidXQgLS1jb3ZlcmFnZSBpcyBu
b3Qgc2V0XG4iCisgICAgfQorfQorCiBteSAkcHJvZHVjdERpciA9IGpzY1Byb2R1Y3REaXIoKTsK
ICRFTlZ7RFlMRF9GUkFNRVdPUktfUEFUSH0gPSAkcHJvZHVjdERpcjsKICRFTlZ7SlNDVEVTVF90
aW1lb3V0fSA9IDEyMCB1bmxlc3MgJEVOVntKU0NURVNUX3RpbWVvdXR9OyAjIFNldCBhIDEyMCBz
ZWNvbmQgdGltZW91dCBvbiBhbGwganNjIHRlc3RzIChpZiBlbnZpcm9ubWVudCB2YXJpYWJsZSBu
b3QgZGVmaW5lZCBhbHJlYWR5KS4KQEAgLTYzOCw2ICs2NzEsMzcgQEAgc3ViIHJlcG9ydFRlc3RG
YWlsdXJlcyB7CiAgIHByaW50ICJcbiI7CiB9CiAKK3N1YiBjb252ZXJ0UHJvZnJhd1RvUHJvZmRh
dGEKK3sKKyAgICBwcmludCAiQ29udmVydGluZyBwcm9mcmF3IGZpbGVzIHRvIHByb2ZkYXRhLlxu
IjsKKyAgICBteSBAY29tbWFuZDsKKyAgICBvcGVuZGlyKFBST0ZSQVdTLCAkY292ZXJhZ2VEaXIp
OworICAgIG15IEBwcm9mcmF3RmlsZXMgPSBncmVwIHsvanNjX3Rlc3RfLipcLnByb2ZyYXcvfSBt
YXAge0ZpbGU6OlNwZWMtPmNhdGZpbGUoJGNvdmVyYWdlRGlyLCAkXyl9IHJlYWRkaXIoUFJPRlJB
V1MpOworICAgIGNsb3NlKFBST0ZSQVdTKTsKKyAgICBwdXNoIEBjb21tYW5kLCAieGNydW4iOwor
ICAgIHB1c2ggQGNvbW1hbmQsICgiLXNkayIsIHhjb2RlU0RLKCkpIGlmIHhjb2RlU0RLKCk7Cisg
ICAgcHVzaCBAY29tbWFuZCwgImxsdm0tcHJvZmRhdGEiLCAibWVyZ2UiLCBAcHJvZnJhd0ZpbGVz
LCAiLW8iLCAkcHJvZmRhdGFQYXRoOworICAgIHN5c3RlbShAY29tbWFuZCk7Cit9CisKK3N1YiBn
ZW5lcmF0ZUhUTUxGcm9tUHJvZmRhdGEKK3sKKyAgICBwcmludCAiR2VuZXJhdGluZyBodG1sIHJl
cG9ydCBmcm9tIHByb2ZkYXRhIGZpbGUuXG4iOworICAgIG15IEBjb21tYW5kOworICAgIHB1c2gg
QGNvbW1hbmQsICJ4Y3J1biI7CisgICAgcHVzaCBAY29tbWFuZCwgKCItc2RrIiwgeGNvZGVTREso
KSkgaWYgeGNvZGVTREsoKTsKKyAgICBwdXNoIEBjb21tYW5kLCAibGx2bS1jb3YiLCAic2hvdyIs
IGJ1aWx0RHlsaWJQYXRoRm9yTmFtZSgiSmF2YVNjcmlwdENvcmUiKSwgIi0tZm9ybWF0PWh0bWwi
LCAiLS1pbnN0ci1wcm9maWxlPSIgLiAkcHJvZmRhdGFQYXRoLCAiLS1vdXRwdXQtZGlyPSIgLiAk
aHRtbERpcjsKKyAgICBzeXN0ZW0oQGNvbW1hbmQpOworCisgICAgcHJpbnQgIkhUTUwgcmVwb3J0
IGlzIGluIGZpbGU6Ly8kaHRtbERpci9pbmRleC5odG1sXG4iOworfQorCitzdWIgcHJvY2Vzc0Nv
dmVyYWdlRGF0YQoreworICAgIGNvbnZlcnRQcm9mcmF3VG9Qcm9mZGF0YSgpOworICAgIGdlbmVy
YXRlSFRNTEZyb21Qcm9mZGF0YSgpOworfQorCiBpZiAoJHJ1blRlc3RNYXNtKSB7IHJ1blRlc3Qo
InRlc3RtYXNtIiwgImFsbE1hc21UZXN0c1Bhc3NlZCIpIH0KIGlmICgkcnVuVGVzdEFpcikgeyBy
dW5UZXN0KCJ0ZXN0YWlyIiwgImFsbEFpclRlc3RzUGFzc2VkIikgfQogaWYgKCRydW5UZXN0QjMp
IHsgcnVuVGVzdCgidGVzdGIzIiwgImFsbEIzVGVzdHNQYXNzZWQiKSB9CkBAIC02NTEsNiArNzE1
LDEwIEBAIGNoZGlyV2ViS2l0KCk7CiAjIEZJWE1FOiByZXBvcnQgc3RyZXNzIHRlc3QgZmFpbHVy
ZXMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNDA5NgogcnVuSlND
U3RyZXNzVGVzdHMoKTsKIHJlcG9ydFRlc3RGYWlsdXJlcygpOworaWYgKCRjb3ZlcmFnZSkKK3sK
KyAgICBwcm9jZXNzQ292ZXJhZ2VEYXRhKCk7Cit9CiAKICRlbmRUaW1lID0gdGltZSgpOwogdXBs
b2FkUmVzdWx0cygpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy9zZXQtd2Via2l0LWNvbmZp
Z3VyYXRpb24gYi9Ub29scy9TY3JpcHRzL3NldC13ZWJraXQtY29uZmlndXJhdGlvbgppbmRleCBk
N2M2OGQyNjZhMS4uNzQxMWQwNTM2OGUgMTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvc2V0LXdl
YmtpdC1jb25maWd1cmF0aW9uCisrKyBiL1Rvb2xzL1NjcmlwdHMvc2V0LXdlYmtpdC1jb25maWd1
cmF0aW9uCkBAIC0zOCw2ICszOCw3IEBAIFVzYWdlOiAkcHJvZ3JhbU5hbWUgW29wdGlvbnNdCiAg
IC0tMzItYml0ICAgICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBkZWZhdWx0IGFyY2hp
dGVjdHVyZSB0byAzMi1iaXQKICAgLS02NC1iaXQgICAgICAgICAgICAgICAgICAgICAgICAgICBT
ZXQgdGhlIGRlZmF1bHQgYXJjaGl0ZWN0dXJlIHRvIDY0LWJpdAogICAtLVtuby1dYXNhbiAgICAg
ICAgICAgICAgICAgICAgICAgIEVuYWJsZSBvciBkaXNhYmxlIGNsYW5nIGFkZHJlc3Mgc2FuaXRp
emVyCisgIC0tW25vLV1jb3ZlcmFnZSAgICAgICAgICAgICAgICAgICAgRW5hYmxlIG9yIGRpc2Fi
bGUgTExWTSBTb3VyY2UtYmFzZWQgQ29kZSBDb3ZlcmFnZQogICAtLWZvcmNlLW9wdGltaXphdGlv
bi1sZXZlbD08bGV2ZWw+IE9wdGltaXphdGlvbiBsZXZlbDogTzMsIE8yLCBPMSwgTzAsIE9zLCBP
ZmFzdCwgT2csIG9yIG5vbmUKICAgLS1sdG8tbW9kZT08bW9kZT4gICAgICAgICAgICAgICAgICBT
ZXQgTFRPIG1vZGU6IGZ1bGwsIHRoaW4sIG9yIG5vbmUKICAgLS1kZWJ1ZyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBTZXQgdGhlIGRlZmF1bHQgY29uZmlndXJhdGlvbiB0byBkZWJ1ZwpAQCAt
NDksNiArNTAsOCBAQCBteSAkY29uZmlndXJhdGlvbiA9IHBhc3NlZENvbmZpZ3VyYXRpb24oKTsK
IG15ICRhcmNoaXRlY3R1cmUgPSBwYXNzZWRBcmNoaXRlY3R1cmUoKTsKIG15ICRlbmFibGVBU0FO
ID0gY2hlY2tGb3JBcmd1bWVudEFuZFJlbW92ZUZyb21BUkdWKCItLWFzYW4iKTsKIG15ICRkaXNh
YmxlQVNBTiA9IGNoZWNrRm9yQXJndW1lbnRBbmRSZW1vdmVGcm9tQVJHVigiLS1uby1hc2FuIik7
CitteSAkZW5hYmxlQ292ZXJhZ2UgPSBjaGVja0ZvckFyZ3VtZW50QW5kUmVtb3ZlRnJvbUFSR1Yo
Ii0tY292ZXJhZ2UiKTsKK215ICRkaXNhYmxlQ292ZXJhZ2UgPSBjaGVja0ZvckFyZ3VtZW50QW5k
UmVtb3ZlRnJvbUFSR1YoIi0tbm8tY292ZXJhZ2UiKTsKIG15ICRsdG9Nb2RlOwogaWYgKCFjaGVj
a0ZvckFyZ3VtZW50QW5kUmVtb3ZlRnJvbUFSR1ZHZXR0aW5nVmFsdWUoIi0tbHRvLW1vZGUiLCBc
JGx0b01vZGUpKSB7CiAgICAgJGx0b01vZGU9IiI7CkBAIC03OCw2ICs4MSw3IEBAIGlmIChjaGVj
a0ZvckFyZ3VtZW50QW5kUmVtb3ZlRnJvbUFSR1YoIi0tcmVzZXQiKSkgewogICAgIHVubGluayAi
JGJhc2VQcm9kdWN0RGlyL0FyY2hpdGVjdHVyZSI7CiAgICAgdW5saW5rICIkYmFzZVByb2R1Y3RE
aXIvQVNhbiI7CiAgICAgdW5saW5rICIkYmFzZVByb2R1Y3REaXIvRm9yY2VPcHRpbWl6YXRpb25M
ZXZlbCI7CisgICAgdW5saW5rICIkYmFzZVByb2R1Y3REaXIvQ292ZXJhZ2UiOwogICAgIHVubGlu
ayAiJGJhc2VQcm9kdWN0RGlyL0xUTyI7CiAgICAgZXhpdCAwOwogfQpAQCAtMTI5LDYgKzEzMywx
NyBAQCBpZiAoJGVuYWJsZUFTQU4pIHsKICAgICB1bmxpbmsgIiRiYXNlUHJvZHVjdERpci9BU2Fu
IjsKIH0KIAoraWYgKCRlbmFibGVDb3ZlcmFnZSkKK3sKKyAgICBvcGVuIENvdmVyYWdlLCAiPiIs
ICIkYmFzZVByb2R1Y3REaXIvQ292ZXJhZ2UiIG9yIGRpZTsKKyAgICBwcmludCBDb3ZlcmFnZSAi
WUVTIjsKKyAgICBjbG9zZSBDb3ZlcmFnZTsKK30KK2Vsc2lmICgkZGlzYWJsZUNvdmVyYWdlKQor
eworICAgIHVubGluayAiJGJhc2VQcm9kdWN0RGlyL0NvdmVyYWdlIjsKK30KKwogaWYgKCRmb3Jj
ZU9wdGltaXphdGlvbkxldmVsICYmICRmb3JjZU9wdGltaXphdGlvbkxldmVsIGVxICJub25lIikg
ewogICAgIHVubGluayAiJGJhc2VQcm9kdWN0RGlyL0ZvcmNlT3B0aW1pemF0aW9uTGV2ZWwiOwog
fSBlbHNpZiAoJGZvcmNlT3B0aW1pemF0aW9uTGV2ZWwpIHsKZGlmZiAtLWdpdCBhL1Rvb2xzL1Nj
cmlwdHMvd2Via2l0ZGlycy5wbSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0ZGlycy5wbQppbmRleCA5
NjFhNDYyODZmNC4uOWU1ZGRjZGJiM2YgMTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0
ZGlycy5wbQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdGRpcnMucG0KQEAgLTEzMyw2ICsxMzMs
NyBAQCBvdXIgQEVYUE9SVF9PSzsKIG15ICRhcmNoaXRlY3R1cmU7CiBteSAkYXNhbklzRW5hYmxl
ZDsKIG15ICRmb3JjZU9wdGltaXphdGlvbkxldmVsOworbXkgJGNvdmVyYWdlSXNFbmFibGVkOwog
bXkgJGx0b01vZGU7CiBteSAkbnVtYmVyT2ZDUFVzOwogbXkgJG1heENQVUxvYWQ7CkBAIC00MzYs
NiArNDM3LDE4IEBAIHN1YiBkZXRlcm1pbmVGb3JjZU9wdGltaXphdGlvbkxldmVsCiAgICAgfQog
fQogCitzdWIgZGV0ZXJtaW5lQ292ZXJhZ2VJc0VuYWJsZWQKK3sKKyAgICByZXR1cm4gaWYgZGVm
aW5lZCAkY292ZXJhZ2VJc0VuYWJsZWQ7CisgICAgZGV0ZXJtaW5lQmFzZVByb2R1Y3REaXIoKTsK
KworICAgIGlmIChvcGVuIENvdmVyYWdlLCAiJGJhc2VQcm9kdWN0RGlyL0NvdmVyYWdlIikgewor
ICAgICAgICAkY292ZXJhZ2VJc0VuYWJsZWQgPSA8Q292ZXJhZ2U+OworICAgICAgICBjbG9zZSBD
b3ZlcmFnZTsKKyAgICAgICAgY2hvbXAgJGNvdmVyYWdlSXNFbmFibGVkOworICAgIH0KK30KKwog
c3ViIGRldGVybWluZUxUT01vZGUKIHsKICAgICByZXR1cm4gaWYgZGVmaW5lZCAkbHRvTW9kZTsK
QEAgLTg3NSw2ICs4ODgsNyBAQCBzdWIgWGNvZGVPcHRpb25zCiAgICAgZGV0ZXJtaW5lQXJjaGl0
ZWN0dXJlKCk7CiAgICAgZGV0ZXJtaW5lQVNhbklzRW5hYmxlZCgpOwogICAgIGRldGVybWluZUZv
cmNlT3B0aW1pemF0aW9uTGV2ZWwoKTsKKyAgICBkZXRlcm1pbmVDb3ZlcmFnZUlzRW5hYmxlZCgp
OwogICAgIGRldGVybWluZUxUT01vZGUoKTsKICAgICBkZXRlcm1pbmVYY29kZVNESygpOwogCkBA
IC04ODMsMTEgKzg5NywxOSBAQCBzdWIgWGNvZGVPcHRpb25zCiAgICAgcHVzaCBAb3B0aW9ucywg
Ii1TaG93QnVpbGRPcGVyYXRpb25EdXJhdGlvbj1ZRVMiOwogICAgIHB1c2ggQG9wdGlvbnMsICgi
LWNvbmZpZ3VyYXRpb24iLCAkY29uZmlndXJhdGlvbik7CiAgICAgcHVzaCBAb3B0aW9ucywgKCIt
eGNjb25maWciLCBzb3VyY2VEaXIoKSAuICIvVG9vbHMvYXNhbi9hc2FuLnhjY29uZmlnIiwgIkFT
QU5fSUdOT1JFPSIgLiBzb3VyY2VEaXIoKSAuICIvVG9vbHMvYXNhbi93ZWJraXQtYXNhbi1pZ25v
cmUudHh0IikgaWYgJGFzYW5Jc0VuYWJsZWQ7CisgICAgcHVzaCBAb3B0aW9ucywgKCIteGNjb25m
aWciLCBzb3VyY2VEaXIoKSAuICIvVG9vbHMvY292ZXJhZ2UvY292ZXJhZ2UueGNjb25maWciKSBp
ZiAkY292ZXJhZ2VJc0VuYWJsZWQ7CiAgICAgcHVzaCBAb3B0aW9ucywgKCJHQ0NfT1BUSU1JWkFU
SU9OX0xFVkVMPSRmb3JjZU9wdGltaXphdGlvbkxldmVsIikgaWYgJGZvcmNlT3B0aW1pemF0aW9u
TGV2ZWw7CiAgICAgcHVzaCBAb3B0aW9ucywgIldLX0xUT19NT0RFPSRsdG9Nb2RlIiBpZiAkbHRv
TW9kZTsKICAgICBwdXNoIEBvcHRpb25zLCBAYmFzZVByb2R1Y3REaXJPcHRpb247CiAgICAgcHVz
aCBAb3B0aW9ucywgIkFSQ0hTPSRhcmNoaXRlY3R1cmUiIGlmICRhcmNoaXRlY3R1cmU7CiAgICAg
cHVzaCBAb3B0aW9ucywgIlNES1JPT1Q9JHhjb2RlU0RLIiBpZiAkeGNvZGVTREs7CisKKyAgICAj
IFdoZW4gdGhpcyBlbnZpcm9ubWVudCB2YXJpYWJsZSBpcyBzZXQgVG9vbHMvU2NyaXB0cy9jaGVj
ay1mb3Itd2Vhay12dGFibGVzLWFuZC1leHRlcm5hbHMKKyAgICAjIHRyZWF0cyBlcnJvcnMgYXMg
bm9uLWZhdGFsIHdoZW4gaXQgZW5jb3VudGVycyBtaXNzaW5nIHN5bWJvbHMgcmVsYXRlZCB0byBj
b3ZlcmFnZQorICAgIGFwcGVuZFRvRW52aXJvbm1lbnRWYXJpYWJsZUxpc3QoIldFQktJVF9DT1ZF
UkFHRV9CVUlMRCIsICIxIikgaWYgJGNvdmVyYWdlSXNFbmFibGVkOworCisgICAgZGllICJjYW5u
b3QgZW5hYmxlIGJvdGggQVNBTiBhbmQgQ292ZXJhZ2UgYXQgdGhpcyB0aW1lXG4iIGlmICRjb3Zl
cmFnZUlzRW5hYmxlZCAmJiAkYXNhbklzRW5hYmxlZDsKKwogICAgIGlmICh3aWxsVXNlSU9TRGV2
aWNlU0RLKCkpIHsKICAgICAgICAgcHVzaCBAb3B0aW9ucywgIkVOQUJMRV9CSVRDT0RFPU5PIjsK
ICAgICAgICAgaWYgKGhhc0lPU0RldmVsb3BtZW50Q2VydGlmaWNhdGUoKSkgewpkaWZmIC0tZ2l0
IGEvVG9vbHMvY292ZXJhZ2UvY292ZXJhZ2UueGNjb25maWcgYi9Ub29scy9jb3ZlcmFnZS9jb3Zl
cmFnZS54Y2NvbmZpZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uYTJj
ZTkxNGYyMmQKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9jb3ZlcmFnZS9jb3ZlcmFnZS54Y2Nv
bmZpZwpAQCAtMCwwICsxLDMgQEAKK09USEVSX0NGTEFHUyA9ICQoaW5oZXJpdGVkKSAtZnByb2Zp
bGUtaW5zdHItZ2VuZXJhdGUgLWZjb3ZlcmFnZS1tYXBwaW5nOworT1RIRVJfQ1BMVVNQTFVTRkxB
R1MgPSAkKGluaGVyaXRlZCkgLWZwcm9maWxlLWluc3RyLWdlbmVyYXRlIC1mY292ZXJhZ2UtbWFw
cGluZzsKK09USEVSX0xERkxBR1MgPSAkKGluaGVyaXRlZCkgLWZwcm9maWxlLWluc3RyLWdlbmVy
YXRlOwo=
</data>
<flag name="review"
          id="404157"
          type_id="1"
          status="-"
          setter="ddkilzer"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>388447</attachid>
            <date>2020-01-22 11:27:12 -0800</date>
            <delta_ts>2020-01-22 21:24:27 -0800</delta_ts>
            <desc>proposed patch</desc>
            <filename>webkit_206389_f.patch</filename>
            <type>text/plain</type>
            <size>9766</size>
            <attacher name="Tuomas Karkkainen">tuomas.webkit</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA2ZDQx
ZTc3MzcyMi4uMzA5MjY1MjZiYjcgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9U
b29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMC0wMS0yMiAgVHVvbWFzIEthcmtr
YWluZW4gIDx0dW9tYXMud2Via2l0QGFwcGxlLmNvbT4KKworICAgICAgICBJdCBzaG91bGQgYmUg
cG9zc2libGUgdG8gYnVpbGQgSmF2YVNjcmlwdENvcmUgd2l0aCBMTFZNIFNvdXJjZS1iYXNlZCBD
b2RlIENvdmVyYWdlLCBydW4gdGhlIHRlc3RzIGFuZCBzZWUgdGhlIGNvdmVyYWdlIGRhdGEKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNjM4OQorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2NyaXB0cy9y
dW4tamF2YXNjcmlwdGNvcmUtdGVzdHM6CisgICAgICAgICogU2NyaXB0cy9zZXQtd2Via2l0LWNv
bmZpZ3VyYXRpb246CisgICAgICAgICogU2NyaXB0cy93ZWJraXRkaXJzLnBtOgorICAgICAgICAq
IGNvdmVyYWdlL2NvdmVyYWdlLnhjY29uZmlnOiBBZGRlZC4KKwogMjAyMC0wMS0yMCAgU2FtIFdl
aW5pZyAgPHdlaW5pZ0BhcHBsZS5jb20+CiAKICAgICAgICAgUGxhdGZvcm0uaCBpcyBvdXQgb2Yg
Y29udHJvbCBQYXJ0IDg6IE1hY3JvcyBhcmUgdXNlZCBpbmNvbnNpc3RlbnRseQpkaWZmIC0tZ2l0
IGEvVG9vbHMvU2NyaXB0cy9ydW4tamF2YXNjcmlwdGNvcmUtdGVzdHMgYi9Ub29scy9TY3JpcHRz
L3J1bi1qYXZhc2NyaXB0Y29yZS10ZXN0cwppbmRleCBjNTQyY2U5YmVjOC4uODhkNGY1YmYxZjYg
MTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvcnVuLWphdmFzY3JpcHRjb3JlLXRlc3RzCisrKyBi
L1Rvb2xzL1NjcmlwdHMvcnVuLWphdmFzY3JpcHRjb3JlLXRlc3RzCkBAIC0xMDEsNiArMTAxLDgg
QEAgbXkgJHZlcnNpb247CiBteSAkdmVyc2lvbk5hbWU7CiBteSAkc2RrOwogbXkgJGZhaWxGYXN0
ID0gMTsKK215ICRjb3ZlcmFnZSA9IDA7CitteSAkY292ZXJhZ2VEaXI7CiBteSAlanNvbkRhdGEg
PSAoKTsKIG15ICVyZXBvcnREYXRhID0gKCk7CiBteSBAdGVzdFJlc3VsdHMgPSAoKTsKQEAgLTIx
Niw2ICsyMTgsNyBAQCBteSAkbW96aWxsYVRlc3RzRGVmYXVsdCA9IGRlZmF1bHRTdHJpbmdGb3JU
ZXN0U3RhdGUoJHJ1bk1vemlsbGFUZXN0cyk7CiBteSAkaml0U3RyZXNzVGVzdHNEZWZhdWx0ID0g
JHJ1bkpJVFN0cmVzc1Rlc3RzID8gIndpbGwgcnVuIiA6ICIgd2lsbCBub3QgcnVuIjsKIG15ICRx
dWlja01vZGVEZWZhdWx0ID0gJHJ1blF1aWNrTW9kZSA/ICJzb21lIiA6ICJhbGwiOwogbXkgJGZh
aWxGYXN0RGVmYXVsdCA9ICRmYWlsRmFzdCA/ICJmYWlsIGZhc3QiIDogImRvbid0IGZhaWwgZmFz
dCI7CitteSAkY292ZXJhZ2VEZWZhdWx0ID0gJGNvdmVyYWdlID8gImNvdmVyYWdlIGVuYWJsZWQi
IDogImNvdmVyYWdlIGRpc2FibGVkIjsKIG15ICRjb3B5SlNDRGVmYXVsdCA9ICRjb3B5SlNDID8g
ImNvcHkiIDogImRvIG5vdCBjb3B5IjsKIG15ICRmaWx0ZXI7CiBteSAkdXNhZ2UgPSA8PEVPRjsK
QEAgLTIzOSw2ICsyNDIsOCBAQCBVc2FnZTogJHByb2dyYW1OYW1lIFtvcHRpb25zXSBbb3B0aW9u
cyB0byBwYXNzIHRvIGJ1aWxkIHN5c3RlbV0KICAgLS1bbm8tXWZhaWwtZmFzdCAgICAgICAgICAg
ICAgU3RvcCB0aGlzIHNjcmlwdCB3aGVuIGEgdGVzdCBmYW1pbHkgcmVwb3J0cyBhbiBlcnJvciBv
ciBmYWlsdXJlIChkZWZhdWx0OiAkZmFpbEZhc3REZWZhdWx0KQogICAtLVtuby1dZm9yY2UtY29s
bGVjdENvbnRpbnVvdXNseSBFbmFibGUgdGhlIGNvbGxlY3RDb250aW51b3VzbHkgbW9kZSBldmVu
IGlmIGl0IHdhcyBkaXNhYmxlZCBvbiB0aGlzIHBsYXRmb3JtLgogICAtLVtuby1dY29weSAgICAg
ICAgICAgICAgICAgICBDb3B5IChvciBkb24ndCBjb3B5KSB0aGUgSmF2YVNjcmlwdENvcmUgYnVp
bGQgcHJvZHVjdCBiZWZvcmUgdGVzdGluZyAoZGVmYXVsdDogJGNvcHlKU0NEZWZhdWx0KQorICAt
LVtuby1dY292ZXJhZ2UgICAgICAgICAgICAgICBFbmFibGUgKG9yIGRpc2FibGUpIExMVk0gU291
cmNlLWJhc2VkIENvZGUgQ292ZXJhZ2UgaW5zdHJ1bWVudGF0aW9uIGZvciB0aGUgdGVzdCBydW4g
KGRlZmF1bHQ6ICRjb3ZlcmFnZURlZmF1bHQpLgorICAtLWNvdmVyYWdlLWRpcj0gICAgICAgICAg
ICAgICBPdXRwdXQgcGF0aCBmb3IgTExWTSBTb3VyY2UtYmFzZWQgQ29kZSBDb3ZlcmFnZSBpbnN0
cnVtZW50YXRpb24gKGRlZmF1bHQ6IGEgdGVtcG9yYXJ5IGRpcmVjdG9yeSkuCiAgIC0tanNvbi1v
dXRwdXQ9ICAgICAgICAgICAgICAgIENyZWF0ZSBhIGZpbGUgYXQgc3BlY2lmaWVkIHBhdGgsIGxp
c3RpbmcgZmFpbGVkIHN0cmVzcyB0ZXN0cyBpbiBKU09OIGZvcm1hdC4KICAgLS10YXJiYWxsICAg
ICAgICAgICAgICAgICAgICAgQ3JlYXRlIGEgdGFyYmFsbCBvZiB0aGUgYnVuZGxlIHByb2R1Y2Vk
IGJ5IHJ1bm5pbmcgdGhlIEpTQyBzdHJlc3MgdGVzdHMuCiAgIC0tcmVtb3RlPSAgICAgICAgICAg
ICAgICAgICAgIFJ1biB0aGUgSlNDIHN0cmVzcyB0ZXN0cyBvbiB0aGUgc3BlY2lmaWVkIHJlbW90
ZSBob3N0LiBJbXBsaWVzIC0tdGFyYmFsbC4KQEAgLTMwNyw2ICszMTIsOCBAQCBHZXRPcHRpb25z
KAogICAgICdmYWlsLWZhc3QhJyA9PiBcJGZhaWxGYXN0LAogICAgICdmb3JjZS1jb2xsZWN0Q29u
dGludW91c2x5IScgPT4gXCRmb3JjZUNvbGxlY3RDb250aW51b3VzbHksCiAgICAgJ2NvcHkhJyA9
PiBcJGNvcHlKU0MsCisgICAgJ2NvdmVyYWdlIScgPT4gXCRjb3ZlcmFnZSwKKyAgICAnY292ZXJh
Z2UtZGlyPXMnID0+IFwkY292ZXJhZ2VEaXIsCiAgICAgJ2pzb24tb3V0cHV0PXMnID0+IFwkanNv
bkZpbGVOYW1lLAogICAgICd0YXJiYWxsIScgPT4gXCRjcmVhdGVUYXJiYWxsLAogICAgICdyZW1v
dGU9cycgPT4gXCRyZW1vdGVIb3N0LApAQCAtNDkwLDYgKzQ5NywyNSBAQCBpZiAoZGVmaW5lZCgk
Z21hbGxvY1BhdGgpKSB7CiAgICAgfQogfQogCitteSAkaHRtbERpcjsKK215ICRwcm9mZGF0YVBh
dGg7CisKK2lmICgkY292ZXJhZ2UpIHsKKyAgICBpZiAoJGNvdmVyYWdlRGlyKSB7CisgICAgICAg
IHByaW50ICJVc2luZyBvdXRwdXQgcGF0aCBzcGVjaWZpZWQgb24gdGhlIGNvbW1hbmQgbGluZSBm
b3IgY292ZXJhZ2UgZGF0YTogJGNvdmVyYWdlRGlyXG4iOworICAgIH0gZWxzZSB7CisgICAgICAg
ICRjb3ZlcmFnZURpciA9IHRlbXBkaXIoKTsKKyAgICAgICAgcHJpbnQgIkdlbmVyYXRpbmcgY292
ZXJhZ2UgZGF0YSBpbnRvICRjb3ZlcmFnZURpclxuIjsKKyAgICB9CisgICAgJGh0bWxEaXIgPSBG
aWxlOjpTcGVjLT5jYXRmaWxlKCRjb3ZlcmFnZURpciwgImh0bWxfcmVwb3J0Iik7CisgICAgJHBy
b2ZkYXRhUGF0aCA9IEZpbGU6OlNwZWMtPmNhdGZpbGUoJGNvdmVyYWdlRGlyLCAianNjX3Rlc3Rz
LnByb2ZkYXRhIik7CisgICAgJGVudlZhcnMgLj0gICIgTExWTV9QUk9GSUxFX0ZJTEU9IiAuIEZp
bGU6OlNwZWMtPmNhdGZpbGUoJGNvdmVyYWdlRGlyLCAianNjX3Rlc3RfJTltLnByb2ZyYXciKTsK
K30gZWxzZSB7CisgICAgaWYgKCRjb3ZlcmFnZURpcikgeworICAgICAgICBkaWUgIi0tY292ZXJh
Z2UtZGlyPSBpcyBzZXQgYnV0IC0tY292ZXJhZ2UgaXMgbm90IHNldFxuIgorICAgIH0KK30KKwog
bXkgJHByb2R1Y3REaXIgPSBqc2NQcm9kdWN0RGlyKCk7CiAkRU5We0RZTERfRlJBTUVXT1JLX1BB
VEh9ID0gJHByb2R1Y3REaXI7CiAkRU5We0pTQ1RFU1RfdGltZW91dH0gPSAxMjAgdW5sZXNzICRF
TlZ7SlNDVEVTVF90aW1lb3V0fTsgIyBTZXQgYSAxMjAgc2Vjb25kIHRpbWVvdXQgb24gYWxsIGpz
YyB0ZXN0cyAoaWYgZW52aXJvbm1lbnQgdmFyaWFibGUgbm90IGRlZmluZWQgYWxyZWFkeSkuCkBA
IC02MzgsNiArNjY0LDM3IEBAIHN1YiByZXBvcnRUZXN0RmFpbHVyZXMgewogICBwcmludCAiXG4i
OwogfQogCitzdWIgY29udmVydFByb2ZyYXdUb1Byb2ZkYXRhCit7CisgICAgcHJpbnQgIkNvbnZl
cnRpbmcgcHJvZnJhdyBmaWxlcyB0byBwcm9mZGF0YS5cbiI7CisgICAgbXkgQGNvbW1hbmQ7Cisg
ICAgb3BlbmRpcihQUk9GUkFXUywgJGNvdmVyYWdlRGlyKTsKKyAgICBteSBAcHJvZnJhd0ZpbGVz
ID0gZ3JlcCB7L2pzY190ZXN0Xy4qXC5wcm9mcmF3L30gbWFwIHtGaWxlOjpTcGVjLT5jYXRmaWxl
KCRjb3ZlcmFnZURpciwgJF8pfSByZWFkZGlyKFBST0ZSQVdTKTsKKyAgICBjbG9zZShQUk9GUkFX
Uyk7CisgICAgcHVzaCBAY29tbWFuZCwgInhjcnVuIjsKKyAgICBwdXNoIEBjb21tYW5kLCAoIi1z
ZGsiLCB4Y29kZVNESygpKSBpZiB4Y29kZVNESygpOworICAgIHB1c2ggQGNvbW1hbmQsICJsbHZt
LXByb2ZkYXRhIiwgIm1lcmdlIiwgQHByb2ZyYXdGaWxlcywgIi1vIiwgJHByb2ZkYXRhUGF0aDsK
KyAgICBzeXN0ZW0oQGNvbW1hbmQpOworfQorCitzdWIgZ2VuZXJhdGVIVE1MRnJvbVByb2ZkYXRh
Cit7CisgICAgcHJpbnQgIkdlbmVyYXRpbmcgaHRtbCByZXBvcnQgZnJvbSBwcm9mZGF0YSBmaWxl
LlxuIjsKKyAgICBteSBAY29tbWFuZDsKKyAgICBwdXNoIEBjb21tYW5kLCAieGNydW4iOworICAg
IHB1c2ggQGNvbW1hbmQsICgiLXNkayIsIHhjb2RlU0RLKCkpIGlmIHhjb2RlU0RLKCk7CisgICAg
cHVzaCBAY29tbWFuZCwgImxsdm0tY292IiwgInNob3ciLCBidWlsdER5bGliUGF0aEZvck5hbWUo
IkphdmFTY3JpcHRDb3JlIiksICItLWZvcm1hdD1odG1sIiwgIi0taW5zdHItcHJvZmlsZT0iIC4g
JHByb2ZkYXRhUGF0aCwgIi0tb3V0cHV0LWRpcj0iIC4gJGh0bWxEaXI7CisgICAgc3lzdGVtKEBj
b21tYW5kKTsKKworICAgIHByaW50ICJIVE1MIHJlcG9ydCBpcyBpbiBmaWxlOi8vJGh0bWxEaXIv
aW5kZXguaHRtbFxuIjsKK30KKworc3ViIHByb2Nlc3NDb3ZlcmFnZURhdGEKK3sKKyAgICBjb252
ZXJ0UHJvZnJhd1RvUHJvZmRhdGEoKTsKKyAgICBnZW5lcmF0ZUhUTUxGcm9tUHJvZmRhdGEoKTsK
K30KKwogaWYgKCRydW5UZXN0TWFzbSkgeyBydW5UZXN0KCJ0ZXN0bWFzbSIsICJhbGxNYXNtVGVz
dHNQYXNzZWQiKSB9CiBpZiAoJHJ1blRlc3RBaXIpIHsgcnVuVGVzdCgidGVzdGFpciIsICJhbGxB
aXJUZXN0c1Bhc3NlZCIpIH0KIGlmICgkcnVuVGVzdEIzKSB7IHJ1blRlc3QoInRlc3RiMyIsICJh
bGxCM1Rlc3RzUGFzc2VkIikgfQpAQCAtNjUxLDYgKzcwOCw5IEBAIGNoZGlyV2ViS2l0KCk7CiAj
IEZJWE1FOiByZXBvcnQgc3RyZXNzIHRlc3QgZmFpbHVyZXMgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIwNDA5NgogcnVuSlNDU3RyZXNzVGVzdHMoKTsKIHJlcG9ydFRl
c3RGYWlsdXJlcygpOworaWYgKCRjb3ZlcmFnZSkgeworICAgIHByb2Nlc3NDb3ZlcmFnZURhdGEo
KTsKK30KIAogJGVuZFRpbWUgPSB0aW1lKCk7CiB1cGxvYWRSZXN1bHRzKCk7CmRpZmYgLS1naXQg
YS9Ub29scy9TY3JpcHRzL3NldC13ZWJraXQtY29uZmlndXJhdGlvbiBiL1Rvb2xzL1NjcmlwdHMv
c2V0LXdlYmtpdC1jb25maWd1cmF0aW9uCmluZGV4IGQ3YzY4ZDI2NmExLi43NmY0NjExZDRiNyAx
MDA3NTUKLS0tIGEvVG9vbHMvU2NyaXB0cy9zZXQtd2Via2l0LWNvbmZpZ3VyYXRpb24KKysrIGIv
VG9vbHMvU2NyaXB0cy9zZXQtd2Via2l0LWNvbmZpZ3VyYXRpb24KQEAgLTM4LDYgKzM4LDcgQEAg
VXNhZ2U6ICRwcm9ncmFtTmFtZSBbb3B0aW9uc10KICAgLS0zMi1iaXQgICAgICAgICAgICAgICAg
ICAgICAgICAgICBTZXQgdGhlIGRlZmF1bHQgYXJjaGl0ZWN0dXJlIHRvIDMyLWJpdAogICAtLTY0
LWJpdCAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgZGVmYXVsdCBhcmNoaXRlY3R1
cmUgdG8gNjQtYml0CiAgIC0tW25vLV1hc2FuICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxl
IG9yIGRpc2FibGUgY2xhbmcgYWRkcmVzcyBzYW5pdGl6ZXIKKyAgLS1bbm8tXWNvdmVyYWdlICAg
ICAgICAgICAgICAgICAgICBFbmFibGUgb3IgZGlzYWJsZSBMTFZNIFNvdXJjZS1iYXNlZCBDb2Rl
IENvdmVyYWdlCiAgIC0tZm9yY2Utb3B0aW1pemF0aW9uLWxldmVsPTxsZXZlbD4gT3B0aW1pemF0
aW9uIGxldmVsOiBPMywgTzIsIE8xLCBPMCwgT3MsIE9mYXN0LCBPZywgb3Igbm9uZQogICAtLWx0
by1tb2RlPTxtb2RlPiAgICAgICAgICAgICAgICAgIFNldCBMVE8gbW9kZTogZnVsbCwgdGhpbiwg
b3Igbm9uZQogICAtLWRlYnVnICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgZGVm
YXVsdCBjb25maWd1cmF0aW9uIHRvIGRlYnVnCkBAIC00OSw2ICs1MCw4IEBAIG15ICRjb25maWd1
cmF0aW9uID0gcGFzc2VkQ29uZmlndXJhdGlvbigpOwogbXkgJGFyY2hpdGVjdHVyZSA9IHBhc3Nl
ZEFyY2hpdGVjdHVyZSgpOwogbXkgJGVuYWJsZUFTQU4gPSBjaGVja0ZvckFyZ3VtZW50QW5kUmVt
b3ZlRnJvbUFSR1YoIi0tYXNhbiIpOwogbXkgJGRpc2FibGVBU0FOID0gY2hlY2tGb3JBcmd1bWVu
dEFuZFJlbW92ZUZyb21BUkdWKCItLW5vLWFzYW4iKTsKK215ICRlbmFibGVDb3ZlcmFnZSA9IGNo
ZWNrRm9yQXJndW1lbnRBbmRSZW1vdmVGcm9tQVJHVigiLS1jb3ZlcmFnZSIpOworbXkgJGRpc2Fi
bGVDb3ZlcmFnZSA9IGNoZWNrRm9yQXJndW1lbnRBbmRSZW1vdmVGcm9tQVJHVigiLS1uby1jb3Zl
cmFnZSIpOwogbXkgJGx0b01vZGU7CiBpZiAoIWNoZWNrRm9yQXJndW1lbnRBbmRSZW1vdmVGcm9t
QVJHVkdldHRpbmdWYWx1ZSgiLS1sdG8tbW9kZSIsIFwkbHRvTW9kZSkpIHsKICAgICAkbHRvTW9k
ZT0iIjsKQEAgLTc4LDYgKzgxLDcgQEAgaWYgKGNoZWNrRm9yQXJndW1lbnRBbmRSZW1vdmVGcm9t
QVJHVigiLS1yZXNldCIpKSB7CiAgICAgdW5saW5rICIkYmFzZVByb2R1Y3REaXIvQXJjaGl0ZWN0
dXJlIjsKICAgICB1bmxpbmsgIiRiYXNlUHJvZHVjdERpci9BU2FuIjsKICAgICB1bmxpbmsgIiRi
YXNlUHJvZHVjdERpci9Gb3JjZU9wdGltaXphdGlvbkxldmVsIjsKKyAgICB1bmxpbmsgIiRiYXNl
UHJvZHVjdERpci9Db3ZlcmFnZSI7CiAgICAgdW5saW5rICIkYmFzZVByb2R1Y3REaXIvTFRPIjsK
ICAgICBleGl0IDA7CiB9CkBAIC0xMjksNiArMTMzLDE0IEBAIGlmICgkZW5hYmxlQVNBTikgewog
ICAgIHVubGluayAiJGJhc2VQcm9kdWN0RGlyL0FTYW4iOwogfQogCitpZiAoJGVuYWJsZUNvdmVy
YWdlKSB7CisgICAgb3BlbiBDb3ZlcmFnZSwgIj4iLCAiJGJhc2VQcm9kdWN0RGlyL0NvdmVyYWdl
IiBvciBkaWU7CisgICAgcHJpbnQgQ292ZXJhZ2UgIllFUyI7CisgICAgY2xvc2UgQ292ZXJhZ2U7
Cit9IGVsc2lmICgkZGlzYWJsZUNvdmVyYWdlKSB7CisgICAgdW5saW5rICIkYmFzZVByb2R1Y3RE
aXIvQ292ZXJhZ2UiOworfQorCiBpZiAoJGZvcmNlT3B0aW1pemF0aW9uTGV2ZWwgJiYgJGZvcmNl
T3B0aW1pemF0aW9uTGV2ZWwgZXEgIm5vbmUiKSB7CiAgICAgdW5saW5rICIkYmFzZVByb2R1Y3RE
aXIvRm9yY2VPcHRpbWl6YXRpb25MZXZlbCI7CiB9IGVsc2lmICgkZm9yY2VPcHRpbWl6YXRpb25M
ZXZlbCkgewpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRkaXJzLnBtIGIvVG9vbHMv
U2NyaXB0cy93ZWJraXRkaXJzLnBtCmluZGV4IDk2MWE0NjI4NmY0Li45ZTVkZGNkYmIzZiAxMDA3
NTUKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRkaXJzLnBtCisrKyBiL1Rvb2xzL1NjcmlwdHMv
d2Via2l0ZGlycy5wbQpAQCAtMTMzLDYgKzEzMyw3IEBAIG91ciBARVhQT1JUX09LOwogbXkgJGFy
Y2hpdGVjdHVyZTsKIG15ICRhc2FuSXNFbmFibGVkOwogbXkgJGZvcmNlT3B0aW1pemF0aW9uTGV2
ZWw7CitteSAkY292ZXJhZ2VJc0VuYWJsZWQ7CiBteSAkbHRvTW9kZTsKIG15ICRudW1iZXJPZkNQ
VXM7CiBteSAkbWF4Q1BVTG9hZDsKQEAgLTQzNiw2ICs0MzcsMTggQEAgc3ViIGRldGVybWluZUZv
cmNlT3B0aW1pemF0aW9uTGV2ZWwKICAgICB9CiB9CiAKK3N1YiBkZXRlcm1pbmVDb3ZlcmFnZUlz
RW5hYmxlZAoreworICAgIHJldHVybiBpZiBkZWZpbmVkICRjb3ZlcmFnZUlzRW5hYmxlZDsKKyAg
ICBkZXRlcm1pbmVCYXNlUHJvZHVjdERpcigpOworCisgICAgaWYgKG9wZW4gQ292ZXJhZ2UsICIk
YmFzZVByb2R1Y3REaXIvQ292ZXJhZ2UiKSB7CisgICAgICAgICRjb3ZlcmFnZUlzRW5hYmxlZCA9
IDxDb3ZlcmFnZT47CisgICAgICAgIGNsb3NlIENvdmVyYWdlOworICAgICAgICBjaG9tcCAkY292
ZXJhZ2VJc0VuYWJsZWQ7CisgICAgfQorfQorCiBzdWIgZGV0ZXJtaW5lTFRPTW9kZQogewogICAg
IHJldHVybiBpZiBkZWZpbmVkICRsdG9Nb2RlOwpAQCAtODc1LDYgKzg4OCw3IEBAIHN1YiBYY29k
ZU9wdGlvbnMKICAgICBkZXRlcm1pbmVBcmNoaXRlY3R1cmUoKTsKICAgICBkZXRlcm1pbmVBU2Fu
SXNFbmFibGVkKCk7CiAgICAgZGV0ZXJtaW5lRm9yY2VPcHRpbWl6YXRpb25MZXZlbCgpOworICAg
IGRldGVybWluZUNvdmVyYWdlSXNFbmFibGVkKCk7CiAgICAgZGV0ZXJtaW5lTFRPTW9kZSgpOwog
ICAgIGRldGVybWluZVhjb2RlU0RLKCk7CiAKQEAgLTg4MywxMSArODk3LDE5IEBAIHN1YiBYY29k
ZU9wdGlvbnMKICAgICBwdXNoIEBvcHRpb25zLCAiLVNob3dCdWlsZE9wZXJhdGlvbkR1cmF0aW9u
PVlFUyI7CiAgICAgcHVzaCBAb3B0aW9ucywgKCItY29uZmlndXJhdGlvbiIsICRjb25maWd1cmF0
aW9uKTsKICAgICBwdXNoIEBvcHRpb25zLCAoIi14Y2NvbmZpZyIsIHNvdXJjZURpcigpIC4gIi9U
b29scy9hc2FuL2FzYW4ueGNjb25maWciLCAiQVNBTl9JR05PUkU9IiAuIHNvdXJjZURpcigpIC4g
Ii9Ub29scy9hc2FuL3dlYmtpdC1hc2FuLWlnbm9yZS50eHQiKSBpZiAkYXNhbklzRW5hYmxlZDsK
KyAgICBwdXNoIEBvcHRpb25zLCAoIi14Y2NvbmZpZyIsIHNvdXJjZURpcigpIC4gIi9Ub29scy9j
b3ZlcmFnZS9jb3ZlcmFnZS54Y2NvbmZpZyIpIGlmICRjb3ZlcmFnZUlzRW5hYmxlZDsKICAgICBw
dXNoIEBvcHRpb25zLCAoIkdDQ19PUFRJTUlaQVRJT05fTEVWRUw9JGZvcmNlT3B0aW1pemF0aW9u
TGV2ZWwiKSBpZiAkZm9yY2VPcHRpbWl6YXRpb25MZXZlbDsKICAgICBwdXNoIEBvcHRpb25zLCAi
V0tfTFRPX01PREU9JGx0b01vZGUiIGlmICRsdG9Nb2RlOwogICAgIHB1c2ggQG9wdGlvbnMsIEBi
YXNlUHJvZHVjdERpck9wdGlvbjsKICAgICBwdXNoIEBvcHRpb25zLCAiQVJDSFM9JGFyY2hpdGVj
dHVyZSIgaWYgJGFyY2hpdGVjdHVyZTsKICAgICBwdXNoIEBvcHRpb25zLCAiU0RLUk9PVD0keGNv
ZGVTREsiIGlmICR4Y29kZVNESzsKKworICAgICMgV2hlbiB0aGlzIGVudmlyb25tZW50IHZhcmlh
YmxlIGlzIHNldCBUb29scy9TY3JpcHRzL2NoZWNrLWZvci13ZWFrLXZ0YWJsZXMtYW5kLWV4dGVy
bmFscworICAgICMgdHJlYXRzIGVycm9ycyBhcyBub24tZmF0YWwgd2hlbiBpdCBlbmNvdW50ZXJz
IG1pc3Npbmcgc3ltYm9scyByZWxhdGVkIHRvIGNvdmVyYWdlCisgICAgYXBwZW5kVG9FbnZpcm9u
bWVudFZhcmlhYmxlTGlzdCgiV0VCS0lUX0NPVkVSQUdFX0JVSUxEIiwgIjEiKSBpZiAkY292ZXJh
Z2VJc0VuYWJsZWQ7CisKKyAgICBkaWUgImNhbm5vdCBlbmFibGUgYm90aCBBU0FOIGFuZCBDb3Zl
cmFnZSBhdCB0aGlzIHRpbWVcbiIgaWYgJGNvdmVyYWdlSXNFbmFibGVkICYmICRhc2FuSXNFbmFi
bGVkOworCiAgICAgaWYgKHdpbGxVc2VJT1NEZXZpY2VTREsoKSkgewogICAgICAgICBwdXNoIEBv
cHRpb25zLCAiRU5BQkxFX0JJVENPREU9Tk8iOwogICAgICAgICBpZiAoaGFzSU9TRGV2ZWxvcG1l
bnRDZXJ0aWZpY2F0ZSgpKSB7Cg==
</data>
<flag name="review"
          id="404178"
          type_id="1"
          status="+"
          setter="ap"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>388513</attachid>
            <date>2020-01-22 21:24:27 -0800</date>
            <delta_ts>2020-01-23 01:46:45 -0800</delta_ts>
            <desc>proposed patch</desc>
            <filename>webkit_206389_g.patch</filename>
            <type>text/plain</type>
            <size>9772</size>
            <attacher name="Tuomas Karkkainen">tuomas.webkit</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA2ZDQx
ZTc3MzcyMi4uZWZlZDlkNDNlMjUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9U
b29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMC0wMS0yMiAgVHVvbWFzIEthcmtr
YWluZW4gIDx0dW9tYXMud2Via2l0QGFwcGxlLmNvbT4KKworICAgICAgICBJdCBzaG91bGQgYmUg
cG9zc2libGUgdG8gYnVpbGQgSmF2YVNjcmlwdENvcmUgd2l0aCBMTFZNIFNvdXJjZS1iYXNlZCBD
b2RlIENvdmVyYWdlLCBydW4gdGhlIHRlc3RzIGFuZCBzZWUgdGhlIGNvdmVyYWdlIGRhdGEKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNjM4OQorCisg
ICAgICAgIFJldmlld2VkIGJ5IEFsZXhleSBQcm9za3VyeWFrb3YuCisKKyAgICAgICAgKiBTY3Jp
cHRzL3J1bi1qYXZhc2NyaXB0Y29yZS10ZXN0czoKKyAgICAgICAgKiBTY3JpcHRzL3NldC13ZWJr
aXQtY29uZmlndXJhdGlvbjoKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdGRpcnMucG06CisgICAg
ICAgICogY292ZXJhZ2UvY292ZXJhZ2UueGNjb25maWc6IEFkZGVkLgorCiAyMDIwLTAxLTIwICBT
YW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KIAogICAgICAgICBQbGF0Zm9ybS5oIGlzIG91
dCBvZiBjb250cm9sIFBhcnQgODogTWFjcm9zIGFyZSB1c2VkIGluY29uc2lzdGVudGx5CmRpZmYg
LS1naXQgYS9Ub29scy9TY3JpcHRzL3J1bi1qYXZhc2NyaXB0Y29yZS10ZXN0cyBiL1Rvb2xzL1Nj
cmlwdHMvcnVuLWphdmFzY3JpcHRjb3JlLXRlc3RzCmluZGV4IGM1NDJjZTliZWM4Li44OGQ0ZjVi
ZjFmNiAxMDA3NTUKLS0tIGEvVG9vbHMvU2NyaXB0cy9ydW4tamF2YXNjcmlwdGNvcmUtdGVzdHMK
KysrIGIvVG9vbHMvU2NyaXB0cy9ydW4tamF2YXNjcmlwdGNvcmUtdGVzdHMKQEAgLTEwMSw2ICsx
MDEsOCBAQCBteSAkdmVyc2lvbjsKIG15ICR2ZXJzaW9uTmFtZTsKIG15ICRzZGs7CiBteSAkZmFp
bEZhc3QgPSAxOworbXkgJGNvdmVyYWdlID0gMDsKK215ICRjb3ZlcmFnZURpcjsKIG15ICVqc29u
RGF0YSA9ICgpOwogbXkgJXJlcG9ydERhdGEgPSAoKTsKIG15IEB0ZXN0UmVzdWx0cyA9ICgpOwpA
QCAtMjE2LDYgKzIxOCw3IEBAIG15ICRtb3ppbGxhVGVzdHNEZWZhdWx0ID0gZGVmYXVsdFN0cmlu
Z0ZvclRlc3RTdGF0ZSgkcnVuTW96aWxsYVRlc3RzKTsKIG15ICRqaXRTdHJlc3NUZXN0c0RlZmF1
bHQgPSAkcnVuSklUU3RyZXNzVGVzdHMgPyAid2lsbCBydW4iIDogIiB3aWxsIG5vdCBydW4iOwog
bXkgJHF1aWNrTW9kZURlZmF1bHQgPSAkcnVuUXVpY2tNb2RlID8gInNvbWUiIDogImFsbCI7CiBt
eSAkZmFpbEZhc3REZWZhdWx0ID0gJGZhaWxGYXN0ID8gImZhaWwgZmFzdCIgOiAiZG9uJ3QgZmFp
bCBmYXN0IjsKK215ICRjb3ZlcmFnZURlZmF1bHQgPSAkY292ZXJhZ2UgPyAiY292ZXJhZ2UgZW5h
YmxlZCIgOiAiY292ZXJhZ2UgZGlzYWJsZWQiOwogbXkgJGNvcHlKU0NEZWZhdWx0ID0gJGNvcHlK
U0MgPyAiY29weSIgOiAiZG8gbm90IGNvcHkiOwogbXkgJGZpbHRlcjsKIG15ICR1c2FnZSA9IDw8
RU9GOwpAQCAtMjM5LDYgKzI0Miw4IEBAIFVzYWdlOiAkcHJvZ3JhbU5hbWUgW29wdGlvbnNdIFtv
cHRpb25zIHRvIHBhc3MgdG8gYnVpbGQgc3lzdGVtXQogICAtLVtuby1dZmFpbC1mYXN0ICAgICAg
ICAgICAgICBTdG9wIHRoaXMgc2NyaXB0IHdoZW4gYSB0ZXN0IGZhbWlseSByZXBvcnRzIGFuIGVy
cm9yIG9yIGZhaWx1cmUgKGRlZmF1bHQ6ICRmYWlsRmFzdERlZmF1bHQpCiAgIC0tW25vLV1mb3Jj
ZS1jb2xsZWN0Q29udGludW91c2x5IEVuYWJsZSB0aGUgY29sbGVjdENvbnRpbnVvdXNseSBtb2Rl
IGV2ZW4gaWYgaXQgd2FzIGRpc2FibGVkIG9uIHRoaXMgcGxhdGZvcm0uCiAgIC0tW25vLV1jb3B5
ICAgICAgICAgICAgICAgICAgIENvcHkgKG9yIGRvbid0IGNvcHkpIHRoZSBKYXZhU2NyaXB0Q29y
ZSBidWlsZCBwcm9kdWN0IGJlZm9yZSB0ZXN0aW5nIChkZWZhdWx0OiAkY29weUpTQ0RlZmF1bHQp
CisgIC0tW25vLV1jb3ZlcmFnZSAgICAgICAgICAgICAgIEVuYWJsZSAob3IgZGlzYWJsZSkgTExW
TSBTb3VyY2UtYmFzZWQgQ29kZSBDb3ZlcmFnZSBpbnN0cnVtZW50YXRpb24gZm9yIHRoZSB0ZXN0
IHJ1biAoZGVmYXVsdDogJGNvdmVyYWdlRGVmYXVsdCkuCisgIC0tY292ZXJhZ2UtZGlyPSAgICAg
ICAgICAgICAgIE91dHB1dCBwYXRoIGZvciBMTFZNIFNvdXJjZS1iYXNlZCBDb2RlIENvdmVyYWdl
IGluc3RydW1lbnRhdGlvbiAoZGVmYXVsdDogYSB0ZW1wb3JhcnkgZGlyZWN0b3J5KS4KICAgLS1q
c29uLW91dHB1dD0gICAgICAgICAgICAgICAgQ3JlYXRlIGEgZmlsZSBhdCBzcGVjaWZpZWQgcGF0
aCwgbGlzdGluZyBmYWlsZWQgc3RyZXNzIHRlc3RzIGluIEpTT04gZm9ybWF0LgogICAtLXRhcmJh
bGwgICAgICAgICAgICAgICAgICAgICBDcmVhdGUgYSB0YXJiYWxsIG9mIHRoZSBidW5kbGUgcHJv
ZHVjZWQgYnkgcnVubmluZyB0aGUgSlNDIHN0cmVzcyB0ZXN0cy4KICAgLS1yZW1vdGU9ICAgICAg
ICAgICAgICAgICAgICAgUnVuIHRoZSBKU0Mgc3RyZXNzIHRlc3RzIG9uIHRoZSBzcGVjaWZpZWQg
cmVtb3RlIGhvc3QuIEltcGxpZXMgLS10YXJiYWxsLgpAQCAtMzA3LDYgKzMxMiw4IEBAIEdldE9w
dGlvbnMoCiAgICAgJ2ZhaWwtZmFzdCEnID0+IFwkZmFpbEZhc3QsCiAgICAgJ2ZvcmNlLWNvbGxl
Y3RDb250aW51b3VzbHkhJyA9PiBcJGZvcmNlQ29sbGVjdENvbnRpbnVvdXNseSwKICAgICAnY29w
eSEnID0+IFwkY29weUpTQywKKyAgICAnY292ZXJhZ2UhJyA9PiBcJGNvdmVyYWdlLAorICAgICdj
b3ZlcmFnZS1kaXI9cycgPT4gXCRjb3ZlcmFnZURpciwKICAgICAnanNvbi1vdXRwdXQ9cycgPT4g
XCRqc29uRmlsZU5hbWUsCiAgICAgJ3RhcmJhbGwhJyA9PiBcJGNyZWF0ZVRhcmJhbGwsCiAgICAg
J3JlbW90ZT1zJyA9PiBcJHJlbW90ZUhvc3QsCkBAIC00OTAsNiArNDk3LDI1IEBAIGlmIChkZWZp
bmVkKCRnbWFsbG9jUGF0aCkpIHsKICAgICB9CiB9CiAKK215ICRodG1sRGlyOworbXkgJHByb2Zk
YXRhUGF0aDsKKworaWYgKCRjb3ZlcmFnZSkgeworICAgIGlmICgkY292ZXJhZ2VEaXIpIHsKKyAg
ICAgICAgcHJpbnQgIlVzaW5nIG91dHB1dCBwYXRoIHNwZWNpZmllZCBvbiB0aGUgY29tbWFuZCBs
aW5lIGZvciBjb3ZlcmFnZSBkYXRhOiAkY292ZXJhZ2VEaXJcbiI7CisgICAgfSBlbHNlIHsKKyAg
ICAgICAgJGNvdmVyYWdlRGlyID0gdGVtcGRpcigpOworICAgICAgICBwcmludCAiR2VuZXJhdGlu
ZyBjb3ZlcmFnZSBkYXRhIGludG8gJGNvdmVyYWdlRGlyXG4iOworICAgIH0KKyAgICAkaHRtbERp
ciA9IEZpbGU6OlNwZWMtPmNhdGZpbGUoJGNvdmVyYWdlRGlyLCAiaHRtbF9yZXBvcnQiKTsKKyAg
ICAkcHJvZmRhdGFQYXRoID0gRmlsZTo6U3BlYy0+Y2F0ZmlsZSgkY292ZXJhZ2VEaXIsICJqc2Nf
dGVzdHMucHJvZmRhdGEiKTsKKyAgICAkZW52VmFycyAuPSAgIiBMTFZNX1BST0ZJTEVfRklMRT0i
IC4gRmlsZTo6U3BlYy0+Y2F0ZmlsZSgkY292ZXJhZ2VEaXIsICJqc2NfdGVzdF8lOW0ucHJvZnJh
dyIpOworfSBlbHNlIHsKKyAgICBpZiAoJGNvdmVyYWdlRGlyKSB7CisgICAgICAgIGRpZSAiLS1j
b3ZlcmFnZS1kaXI9IGlzIHNldCBidXQgLS1jb3ZlcmFnZSBpcyBub3Qgc2V0XG4iCisgICAgfQor
fQorCiBteSAkcHJvZHVjdERpciA9IGpzY1Byb2R1Y3REaXIoKTsKICRFTlZ7RFlMRF9GUkFNRVdP
UktfUEFUSH0gPSAkcHJvZHVjdERpcjsKICRFTlZ7SlNDVEVTVF90aW1lb3V0fSA9IDEyMCB1bmxl
c3MgJEVOVntKU0NURVNUX3RpbWVvdXR9OyAjIFNldCBhIDEyMCBzZWNvbmQgdGltZW91dCBvbiBh
bGwganNjIHRlc3RzIChpZiBlbnZpcm9ubWVudCB2YXJpYWJsZSBub3QgZGVmaW5lZCBhbHJlYWR5
KS4KQEAgLTYzOCw2ICs2NjQsMzcgQEAgc3ViIHJlcG9ydFRlc3RGYWlsdXJlcyB7CiAgIHByaW50
ICJcbiI7CiB9CiAKK3N1YiBjb252ZXJ0UHJvZnJhd1RvUHJvZmRhdGEKK3sKKyAgICBwcmludCAi
Q29udmVydGluZyBwcm9mcmF3IGZpbGVzIHRvIHByb2ZkYXRhLlxuIjsKKyAgICBteSBAY29tbWFu
ZDsKKyAgICBvcGVuZGlyKFBST0ZSQVdTLCAkY292ZXJhZ2VEaXIpOworICAgIG15IEBwcm9mcmF3
RmlsZXMgPSBncmVwIHsvanNjX3Rlc3RfLipcLnByb2ZyYXcvfSBtYXAge0ZpbGU6OlNwZWMtPmNh
dGZpbGUoJGNvdmVyYWdlRGlyLCAkXyl9IHJlYWRkaXIoUFJPRlJBV1MpOworICAgIGNsb3NlKFBS
T0ZSQVdTKTsKKyAgICBwdXNoIEBjb21tYW5kLCAieGNydW4iOworICAgIHB1c2ggQGNvbW1hbmQs
ICgiLXNkayIsIHhjb2RlU0RLKCkpIGlmIHhjb2RlU0RLKCk7CisgICAgcHVzaCBAY29tbWFuZCwg
Imxsdm0tcHJvZmRhdGEiLCAibWVyZ2UiLCBAcHJvZnJhd0ZpbGVzLCAiLW8iLCAkcHJvZmRhdGFQ
YXRoOworICAgIHN5c3RlbShAY29tbWFuZCk7Cit9CisKK3N1YiBnZW5lcmF0ZUhUTUxGcm9tUHJv
ZmRhdGEKK3sKKyAgICBwcmludCAiR2VuZXJhdGluZyBodG1sIHJlcG9ydCBmcm9tIHByb2ZkYXRh
IGZpbGUuXG4iOworICAgIG15IEBjb21tYW5kOworICAgIHB1c2ggQGNvbW1hbmQsICJ4Y3J1biI7
CisgICAgcHVzaCBAY29tbWFuZCwgKCItc2RrIiwgeGNvZGVTREsoKSkgaWYgeGNvZGVTREsoKTsK
KyAgICBwdXNoIEBjb21tYW5kLCAibGx2bS1jb3YiLCAic2hvdyIsIGJ1aWx0RHlsaWJQYXRoRm9y
TmFtZSgiSmF2YVNjcmlwdENvcmUiKSwgIi0tZm9ybWF0PWh0bWwiLCAiLS1pbnN0ci1wcm9maWxl
PSIgLiAkcHJvZmRhdGFQYXRoLCAiLS1vdXRwdXQtZGlyPSIgLiAkaHRtbERpcjsKKyAgICBzeXN0
ZW0oQGNvbW1hbmQpOworCisgICAgcHJpbnQgIkhUTUwgcmVwb3J0IGlzIGluIGZpbGU6Ly8kaHRt
bERpci9pbmRleC5odG1sXG4iOworfQorCitzdWIgcHJvY2Vzc0NvdmVyYWdlRGF0YQoreworICAg
IGNvbnZlcnRQcm9mcmF3VG9Qcm9mZGF0YSgpOworICAgIGdlbmVyYXRlSFRNTEZyb21Qcm9mZGF0
YSgpOworfQorCiBpZiAoJHJ1blRlc3RNYXNtKSB7IHJ1blRlc3QoInRlc3RtYXNtIiwgImFsbE1h
c21UZXN0c1Bhc3NlZCIpIH0KIGlmICgkcnVuVGVzdEFpcikgeyBydW5UZXN0KCJ0ZXN0YWlyIiwg
ImFsbEFpclRlc3RzUGFzc2VkIikgfQogaWYgKCRydW5UZXN0QjMpIHsgcnVuVGVzdCgidGVzdGIz
IiwgImFsbEIzVGVzdHNQYXNzZWQiKSB9CkBAIC02NTEsNiArNzA4LDkgQEAgY2hkaXJXZWJLaXQo
KTsKICMgRklYTUU6IHJlcG9ydCBzdHJlc3MgdGVzdCBmYWlsdXJlcyBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA0MDk2CiBydW5KU0NTdHJlc3NUZXN0cygpOwogcmVw
b3J0VGVzdEZhaWx1cmVzKCk7CitpZiAoJGNvdmVyYWdlKSB7CisgICAgcHJvY2Vzc0NvdmVyYWdl
RGF0YSgpOworfQogCiAkZW5kVGltZSA9IHRpbWUoKTsKIHVwbG9hZFJlc3VsdHMoKTsKZGlmZiAt
LWdpdCBhL1Rvb2xzL1NjcmlwdHMvc2V0LXdlYmtpdC1jb25maWd1cmF0aW9uIGIvVG9vbHMvU2Ny
aXB0cy9zZXQtd2Via2l0LWNvbmZpZ3VyYXRpb24KaW5kZXggZDdjNjhkMjY2YTEuLjc2ZjQ2MTFk
NGI3IDEwMDc1NQotLS0gYS9Ub29scy9TY3JpcHRzL3NldC13ZWJraXQtY29uZmlndXJhdGlvbgor
KysgYi9Ub29scy9TY3JpcHRzL3NldC13ZWJraXQtY29uZmlndXJhdGlvbgpAQCAtMzgsNiArMzgs
NyBAQCBVc2FnZTogJHByb2dyYW1OYW1lIFtvcHRpb25zXQogICAtLTMyLWJpdCAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFNldCB0aGUgZGVmYXVsdCBhcmNoaXRlY3R1cmUgdG8gMzItYml0CiAg
IC0tNjQtYml0ICAgICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBkZWZhdWx0IGFyY2hp
dGVjdHVyZSB0byA2NC1iaXQKICAgLS1bbm8tXWFzYW4gICAgICAgICAgICAgICAgICAgICAgICBF
bmFibGUgb3IgZGlzYWJsZSBjbGFuZyBhZGRyZXNzIHNhbml0aXplcgorICAtLVtuby1dY292ZXJh
Z2UgICAgICAgICAgICAgICAgICAgIEVuYWJsZSBvciBkaXNhYmxlIExMVk0gU291cmNlLWJhc2Vk
IENvZGUgQ292ZXJhZ2UKICAgLS1mb3JjZS1vcHRpbWl6YXRpb24tbGV2ZWw9PGxldmVsPiBPcHRp
bWl6YXRpb24gbGV2ZWw6IE8zLCBPMiwgTzEsIE8wLCBPcywgT2Zhc3QsIE9nLCBvciBub25lCiAg
IC0tbHRvLW1vZGU9PG1vZGU+ICAgICAgICAgICAgICAgICAgU2V0IExUTyBtb2RlOiBmdWxsLCB0
aGluLCBvciBub25lCiAgIC0tZGVidWcgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRo
ZSBkZWZhdWx0IGNvbmZpZ3VyYXRpb24gdG8gZGVidWcKQEAgLTQ5LDYgKzUwLDggQEAgbXkgJGNv
bmZpZ3VyYXRpb24gPSBwYXNzZWRDb25maWd1cmF0aW9uKCk7CiBteSAkYXJjaGl0ZWN0dXJlID0g
cGFzc2VkQXJjaGl0ZWN0dXJlKCk7CiBteSAkZW5hYmxlQVNBTiA9IGNoZWNrRm9yQXJndW1lbnRB
bmRSZW1vdmVGcm9tQVJHVigiLS1hc2FuIik7CiBteSAkZGlzYWJsZUFTQU4gPSBjaGVja0ZvckFy
Z3VtZW50QW5kUmVtb3ZlRnJvbUFSR1YoIi0tbm8tYXNhbiIpOworbXkgJGVuYWJsZUNvdmVyYWdl
ID0gY2hlY2tGb3JBcmd1bWVudEFuZFJlbW92ZUZyb21BUkdWKCItLWNvdmVyYWdlIik7CitteSAk
ZGlzYWJsZUNvdmVyYWdlID0gY2hlY2tGb3JBcmd1bWVudEFuZFJlbW92ZUZyb21BUkdWKCItLW5v
LWNvdmVyYWdlIik7CiBteSAkbHRvTW9kZTsKIGlmICghY2hlY2tGb3JBcmd1bWVudEFuZFJlbW92
ZUZyb21BUkdWR2V0dGluZ1ZhbHVlKCItLWx0by1tb2RlIiwgXCRsdG9Nb2RlKSkgewogICAgICRs
dG9Nb2RlPSIiOwpAQCAtNzgsNiArODEsNyBAQCBpZiAoY2hlY2tGb3JBcmd1bWVudEFuZFJlbW92
ZUZyb21BUkdWKCItLXJlc2V0IikpIHsKICAgICB1bmxpbmsgIiRiYXNlUHJvZHVjdERpci9BcmNo
aXRlY3R1cmUiOwogICAgIHVubGluayAiJGJhc2VQcm9kdWN0RGlyL0FTYW4iOwogICAgIHVubGlu
ayAiJGJhc2VQcm9kdWN0RGlyL0ZvcmNlT3B0aW1pemF0aW9uTGV2ZWwiOworICAgIHVubGluayAi
JGJhc2VQcm9kdWN0RGlyL0NvdmVyYWdlIjsKICAgICB1bmxpbmsgIiRiYXNlUHJvZHVjdERpci9M
VE8iOwogICAgIGV4aXQgMDsKIH0KQEAgLTEyOSw2ICsxMzMsMTQgQEAgaWYgKCRlbmFibGVBU0FO
KSB7CiAgICAgdW5saW5rICIkYmFzZVByb2R1Y3REaXIvQVNhbiI7CiB9CiAKK2lmICgkZW5hYmxl
Q292ZXJhZ2UpIHsKKyAgICBvcGVuIENvdmVyYWdlLCAiPiIsICIkYmFzZVByb2R1Y3REaXIvQ292
ZXJhZ2UiIG9yIGRpZTsKKyAgICBwcmludCBDb3ZlcmFnZSAiWUVTIjsKKyAgICBjbG9zZSBDb3Zl
cmFnZTsKK30gZWxzaWYgKCRkaXNhYmxlQ292ZXJhZ2UpIHsKKyAgICB1bmxpbmsgIiRiYXNlUHJv
ZHVjdERpci9Db3ZlcmFnZSI7Cit9CisKIGlmICgkZm9yY2VPcHRpbWl6YXRpb25MZXZlbCAmJiAk
Zm9yY2VPcHRpbWl6YXRpb25MZXZlbCBlcSAibm9uZSIpIHsKICAgICB1bmxpbmsgIiRiYXNlUHJv
ZHVjdERpci9Gb3JjZU9wdGltaXphdGlvbkxldmVsIjsKIH0gZWxzaWYgKCRmb3JjZU9wdGltaXph
dGlvbkxldmVsKSB7CmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdGRpcnMucG0gYi9U
b29scy9TY3JpcHRzL3dlYmtpdGRpcnMucG0KaW5kZXggOTYxYTQ2Mjg2ZjQuLjE1ZDkzNGI1NmUz
IDEwMDc1NQotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdGRpcnMucG0KKysrIGIvVG9vbHMvU2Ny
aXB0cy93ZWJraXRkaXJzLnBtCkBAIC0xMzMsNiArMTMzLDcgQEAgb3VyIEBFWFBPUlRfT0s7CiBt
eSAkYXJjaGl0ZWN0dXJlOwogbXkgJGFzYW5Jc0VuYWJsZWQ7CiBteSAkZm9yY2VPcHRpbWl6YXRp
b25MZXZlbDsKK215ICRjb3ZlcmFnZUlzRW5hYmxlZDsKIG15ICRsdG9Nb2RlOwogbXkgJG51bWJl
ck9mQ1BVczsKIG15ICRtYXhDUFVMb2FkOwpAQCAtNDM2LDYgKzQzNywxOCBAQCBzdWIgZGV0ZXJt
aW5lRm9yY2VPcHRpbWl6YXRpb25MZXZlbAogICAgIH0KIH0KIAorc3ViIGRldGVybWluZUNvdmVy
YWdlSXNFbmFibGVkCit7CisgICAgcmV0dXJuIGlmIGRlZmluZWQgJGNvdmVyYWdlSXNFbmFibGVk
OworICAgIGRldGVybWluZUJhc2VQcm9kdWN0RGlyKCk7CisKKyAgICBpZiAob3BlbiBDb3ZlcmFn
ZSwgIiRiYXNlUHJvZHVjdERpci9Db3ZlcmFnZSIpIHsKKyAgICAgICAgJGNvdmVyYWdlSXNFbmFi
bGVkID0gPENvdmVyYWdlPjsKKyAgICAgICAgY2xvc2UgQ292ZXJhZ2U7CisgICAgICAgIGNob21w
ICRjb3ZlcmFnZUlzRW5hYmxlZDsKKyAgICB9Cit9CisKIHN1YiBkZXRlcm1pbmVMVE9Nb2RlCiB7
CiAgICAgcmV0dXJuIGlmIGRlZmluZWQgJGx0b01vZGU7CkBAIC04NzUsNiArODg4LDcgQEAgc3Vi
IFhjb2RlT3B0aW9ucwogICAgIGRldGVybWluZUFyY2hpdGVjdHVyZSgpOwogICAgIGRldGVybWlu
ZUFTYW5Jc0VuYWJsZWQoKTsKICAgICBkZXRlcm1pbmVGb3JjZU9wdGltaXphdGlvbkxldmVsKCk7
CisgICAgZGV0ZXJtaW5lQ292ZXJhZ2VJc0VuYWJsZWQoKTsKICAgICBkZXRlcm1pbmVMVE9Nb2Rl
KCk7CiAgICAgZGV0ZXJtaW5lWGNvZGVTREsoKTsKIApAQCAtODgzLDExICs4OTcsMTkgQEAgc3Vi
IFhjb2RlT3B0aW9ucwogICAgIHB1c2ggQG9wdGlvbnMsICItU2hvd0J1aWxkT3BlcmF0aW9uRHVy
YXRpb249WUVTIjsKICAgICBwdXNoIEBvcHRpb25zLCAoIi1jb25maWd1cmF0aW9uIiwgJGNvbmZp
Z3VyYXRpb24pOwogICAgIHB1c2ggQG9wdGlvbnMsICgiLXhjY29uZmlnIiwgc291cmNlRGlyKCkg
LiAiL1Rvb2xzL2FzYW4vYXNhbi54Y2NvbmZpZyIsICJBU0FOX0lHTk9SRT0iIC4gc291cmNlRGly
KCkgLiAiL1Rvb2xzL2FzYW4vd2Via2l0LWFzYW4taWdub3JlLnR4dCIpIGlmICRhc2FuSXNFbmFi
bGVkOworICAgIHB1c2ggQG9wdGlvbnMsICgiLXhjY29uZmlnIiwgc291cmNlRGlyKCkgLiAiL1Rv
b2xzL2NvdmVyYWdlL2NvdmVyYWdlLnhjY29uZmlnIikgaWYgJGNvdmVyYWdlSXNFbmFibGVkOwog
ICAgIHB1c2ggQG9wdGlvbnMsICgiR0NDX09QVElNSVpBVElPTl9MRVZFTD0kZm9yY2VPcHRpbWl6
YXRpb25MZXZlbCIpIGlmICRmb3JjZU9wdGltaXphdGlvbkxldmVsOwogICAgIHB1c2ggQG9wdGlv
bnMsICJXS19MVE9fTU9ERT0kbHRvTW9kZSIgaWYgJGx0b01vZGU7CiAgICAgcHVzaCBAb3B0aW9u
cywgQGJhc2VQcm9kdWN0RGlyT3B0aW9uOwogICAgIHB1c2ggQG9wdGlvbnMsICJBUkNIUz0kYXJj
aGl0ZWN0dXJlIiBpZiAkYXJjaGl0ZWN0dXJlOwogICAgIHB1c2ggQG9wdGlvbnMsICJTREtST09U
PSR4Y29kZVNESyIgaWYgJHhjb2RlU0RLOworCisgICAgIyBXaGVuIHRoaXMgZW52aXJvbm1lbnQg
dmFyaWFibGUgaXMgc2V0IFRvb2xzL1NjcmlwdHMvY2hlY2stZm9yLXdlYWstdnRhYmxlcy1hbmQt
ZXh0ZXJuYWxzCisgICAgIyB0cmVhdHMgZXJyb3JzIGFzIG5vbi1mYXRhbCB3aGVuIGl0IGVuY291
bnRlcnMgbWlzc2luZyBzeW1ib2xzIHJlbGF0ZWQgdG8gY292ZXJhZ2UuCisgICAgYXBwZW5kVG9F
bnZpcm9ubWVudFZhcmlhYmxlTGlzdCgiV0VCS0lUX0NPVkVSQUdFX0JVSUxEIiwgIjEiKSBpZiAk
Y292ZXJhZ2VJc0VuYWJsZWQ7CisKKyAgICBkaWUgImNhbm5vdCBlbmFibGUgYm90aCBBU0FOIGFu
ZCBDb3ZlcmFnZSBhdCB0aGlzIHRpbWVcbiIgaWYgJGNvdmVyYWdlSXNFbmFibGVkICYmICRhc2Fu
SXNFbmFibGVkOworCiAgICAgaWYgKHdpbGxVc2VJT1NEZXZpY2VTREsoKSkgewogICAgICAgICBw
dXNoIEBvcHRpb25zLCAiRU5BQkxFX0JJVENPREU9Tk8iOwogICAgICAgICBpZiAoaGFzSU9TRGV2
ZWxvcG1lbnRDZXJ0aWZpY2F0ZSgpKSB7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>