<?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>219600</bug_id>
          
          <creation_ts>2020-12-07 06:20:48 -0800</creation_ts>
          <short_desc>Support JS type reflections in WebAssembly JS-API</short_desc>
          <delta_ts>2020-12-28 13:17:00 -0800</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>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>jtallon</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>tsavell</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1712446</commentid>
    <comment_count>0</comment_count>
    <who name="">jtallon</who>
    <bug_when>2020-12-07 06:20:48 -0800</bug_when>
    <thetext>Support JS type reflections in the JS-API, an overview of the API changes are outlined here: https://github.com/WebAssembly/js-types/blob/master/proposals/js-types/Overview.md</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1712451</commentid>
    <comment_count>1</comment_count>
      <attachid>415554</attachid>
    <who name="">jtallon</who>
    <bug_when>2020-12-07 07:08:05 -0800</bug_when>
    <thetext>Created attachment 415554
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1712687</commentid>
    <comment_count>2</comment_count>
      <attachid>415554</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-12-07 23:17:01 -0800</bug_when>
    <thetext>Comment on attachment 415554
Patch

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

Looks good, but put r- since I found bugs, And, can you update the LayoutTests results to make EWS green?

&gt; Source/JavaScriptCore/wasm/js/WebAssemblyMemoryConstructor.cpp:74
&gt; +        JSValue minSizeValue = memoryDescriptor-&gt;get(globalObject, minimum);

We need

RETURN_IF_EXCEPTION(throwScope, encodedJSValue());

here since `-&gt;get(...)` can throw an error.

&gt; Source/JavaScriptCore/wasm/js/WebAssemblyTableConstructor.cpp:85
&gt; +    JSValue minSizeValue = memoryDescriptor-&gt;get(globalObject, minimumIdent);

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1712688</commentid>
    <comment_count>3</comment_count>
      <attachid>415554</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-12-07 23:17:30 -0800</bug_when>
    <thetext>Comment on attachment 415554
Patch

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

&gt; Source/JavaScriptCore/wasm/js/WebAssemblyMemoryConstructor.cpp:77
&gt; +            return JSValue::encode(throwException(globalObject, throwScope, createTypeError(globalObject, &quot;WebAssembly.Memory specify exactly one of &apos;initial&apos; or &apos;minimum&apos;&quot;)));

Use `return throwVMTypeError(...)`.

&gt; Source/JavaScriptCore/wasm/js/WebAssemblyTableConstructor.cpp:87
&gt; +        return JSValue::encode(throwException(globalObject, throwScope, createTypeError(globalObject, &quot;WebAssembly.Table exactly one of &apos;initial&apos; or &apos;minimum&apos;&quot;)));

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1713091</commentid>
    <comment_count>4</comment_count>
      <attachid>415736</attachid>
    <who name="">jtallon</who>
    <bug_when>2020-12-09 03:19:17 -0800</bug_when>
    <thetext>Created attachment 415736
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1713240</commentid>
    <comment_count>5</comment_count>
      <attachid>415736</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-12-09 11:32:05 -0800</bug_when>
    <thetext>Comment on attachment 415736
Patch

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

Can you update LayoutTests results to make EWS green?
Currently, win, mac-wk1, mac-wk2, and mac-debug-wk1 are red.

&gt; Source/JavaScriptCore/wasm/js/WebAssemblyMemoryConstructor.cpp:78
&gt; +            return throwVMTypeError(globalObject, throwScope, &quot;WebAssembly.Memory specify exactly one of &apos;initial&apos; or &apos;minimum&apos;&quot;);

Maybe, &quot;&apos;initial&apos; and &apos;minimum&apos; options are specified at the same time&quot; would be better.

&gt; Source/JavaScriptCore/wasm/js/WebAssemblyTableConstructor.cpp:88
&gt; +        return throwVMTypeError(globalObject, throwScope, &quot;WebAssembly.Table exactly one of &apos;initial&apos; or &apos;minimum&apos;&quot;);

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1714428</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-12-14 06:21:15 -0800</bug_when>
    <thetext>&lt;rdar://problem/72295339&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1714929</commentid>
    <comment_count>7</comment_count>
      <attachid>416294</attachid>
    <who name="">jtallon</who>
    <bug_when>2020-12-15 14:24:52 -0800</bug_when>
    <thetext>Created attachment 416294
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1714931</commentid>
    <comment_count>8</comment_count>
    <who name="">jtallon</who>
    <bug_when>2020-12-15 14:29:16 -0800</bug_when>
    <thetext>I&apos;ve amended the patch to include the improved error message. I took a look at the failing tests and it looks like they&apos;re web-platform tests for the .type() method on WebAssembly.Memory, WebAssembly.Table and WebAssembly.Global. Those along with WebAssembly.Function I plan to make in a future pull requests, they should be failing currently on master too as it&apos;s currently missing. I was planning to land this in smaller sections (minimum constructor parameter, .type method and then WebAssembly.Function implementation).

Thanks for the review!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1714961</commentid>
    <comment_count>9</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-12-15 16:13:58 -0800</bug_when>
    <thetext>(In reply to jtallon from comment #8)
&gt; I&apos;ve amended the patch to include the improved error message. I took a look
&gt; at the failing tests and it looks like they&apos;re web-platform tests for the
&gt; .type() method on WebAssembly.Memory, WebAssembly.Table and
&gt; WebAssembly.Global. Those along with WebAssembly.Function I plan to make in
&gt; a future pull requests, they should be failing currently on master too as
&gt; it&apos;s currently missing. I was planning to land this in smaller sections
&gt; (minimum constructor parameter, .type method and then WebAssembly.Function
&gt; implementation).
&gt; 
&gt; Thanks for the review!

In WebKit, we cannot land the patch with failing patch.
Can you update the xxx-expected.txt files in LayoutTests to make them green? :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1714963</commentid>
    <comment_count>10</comment_count>
      <attachid>416294</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-12-15 16:14:15 -0800</bug_when>
    <thetext>Comment on attachment 416294
Patch

Needing rebaseline of LayoutTests expected files.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1714970</commentid>
    <comment_count>11</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-12-15 16:48:50 -0800</bug_when>
    <thetext>You can see what LayoutTests are failing.
If this failure is due to updated expected.txt files, you can update `LayoutTests/.../test-name-expected.txt` to update the expectation of these tests.
Then you can make it green.
If the failure is due to the bug of the patch, we need to fix the bug before landing.

In this case, it seems that tests are failing because expectation is updated. So please update xxx-expected.txt files to update expectations of these tests.
https://ews-build.s3-us-west-2.amazonaws.com/macOS-Mojave-Release-WK2-Tests-EWS/r416294-24678/results.html

Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1715669</commentid>
    <comment_count>12</comment_count>
      <attachid>416502</attachid>
    <who name="">jtallon</who>
    <bug_when>2020-12-18 00:21:33 -0800</bug_when>
    <thetext>Created attachment 416502
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1715696</commentid>
    <comment_count>13</comment_count>
      <attachid>416508</attachid>
    <who name="">jtallon</who>
    <bug_when>2020-12-18 04:12:10 -0800</bug_when>
    <thetext>Created attachment 416508
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1715701</commentid>
    <comment_count>14</comment_count>
      <attachid>416510</attachid>
    <who name="">jtallon</who>
    <bug_when>2020-12-18 06:02:27 -0800</bug_when>
    <thetext>Created attachment 416510
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1715798</commentid>
    <comment_count>15</comment_count>
      <attachid>416510</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-12-18 13:46:46 -0800</bug_when>
    <thetext>Comment on attachment 416510
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1715799</commentid>
    <comment_count>16</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-12-18 13:47:14 -0800</bug_when>
    <thetext>/Volumes/Data/worker/Commit-Queue/build/LayoutTests/ChangeLog neither lists a valid reviewer nor contains the string &quot;Unreviewed&quot; or &quot;Rubber stamp&quot; (case insensitive).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1715816</commentid>
    <comment_count>17</comment_count>
      <attachid>416510</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-12-18 14:41:39 -0800</bug_when>
    <thetext>Comment on attachment 416510
Patch

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

&gt; Source/JavaScriptCore/ChangeLog:5
&gt; +

Please keep `Reviewed by NOBODY (OOPS!).` thing.
This will be replaced by commit-queue, and we cannot land it without that.

ChangeLog format is,

2020-12-07 Jessica Tallon &lt;jtallon@igalia.com&gt;

        [JSC] Add minimum parameter to the WASM JS-API for Memory &amp; Table.
        https://bugs.webkit.org/show_bug.cgi?id=219600

        Reviewed by NOBODY (OOPS!).

        Comments.

&gt; LayoutTests/ChangeLog:5
&gt; +

Please keep `Reviewed by NOBODY (OOPS!).` thing.
This will be replaced by commit-queue, and we cannot land it without that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1716000</commentid>
    <comment_count>18</comment_count>
      <attachid>416600</attachid>
    <who name="">jtallon</who>
    <bug_when>2020-12-21 07:04:25 -0800</bug_when>
    <thetext>Created attachment 416600
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1716081</commentid>
    <comment_count>19</comment_count>
      <attachid>416600</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-12-21 13:28:07 -0800</bug_when>
    <thetext>Comment on attachment 416600
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1716085</commentid>
    <comment_count>20</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-12-21 13:31:49 -0800</bug_when>
    <thetext>Committed r271039: &lt;https://trac.webkit.org/changeset/271039&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 416600.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1716399</commentid>
    <comment_count>21</comment_count>
    <who name="Truitt Savell">tsavell</who>
    <bug_when>2020-12-22 16:03:52 -0800</bug_when>
    <thetext>The changes in r271039 appear to have broken fast/images/webp-as-image.html on Big Sur

History:
https://results.webkit.org/?suite=layout-tests&amp;test=fast%2Fimages%2Fwebp-as-image.html

Diff:
https://build.webkit.org/results/Apple-BigSur-Release-WK2-Tests/r271064%20(686)/fast/images/webp-as-image-diffs.html

it looks like this test is failing to load an image</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1716592</commentid>
    <comment_count>22</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-12-25 10:23:39 -0800</bug_when>
    <thetext>(In reply to Truitt Savell from comment #21)
&gt; The changes in r271039 appear to have broken fast/images/webp-as-image.html
&gt; on Big Sur
&gt; 
&gt; History:
&gt; https://results.webkit.org/?suite=layout-tests&amp;test=fast%2Fimages%2Fwebp-as-
&gt; image.html
&gt; 
&gt; Diff:
&gt; https://build.webkit.org/results/Apple-BigSur-Release-WK2-Tests/
&gt; r271064%20(686)/fast/images/webp-as-image-diffs.html
&gt; 
&gt; it looks like this test is failing to load an image

Hmmmmmmmmm, this sounds super strange. Literally, this patch only changes WebAssembly part.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1716593</commentid>
    <comment_count>23</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-12-25 10:26:07 -0800</bug_when>
    <thetext>(In reply to Yusuke Suzuki from comment #22)
&gt; (In reply to Truitt Savell from comment #21)
&gt; &gt; The changes in r271039 appear to have broken fast/images/webp-as-image.html
&gt; &gt; on Big Sur
&gt; &gt; 
&gt; &gt; History:
&gt; &gt; https://results.webkit.org/?suite=layout-tests&amp;test=fast%2Fimages%2Fwebp-as-
&gt; &gt; image.html
&gt; &gt; 
&gt; &gt; Diff:
&gt; &gt; https://build.webkit.org/results/Apple-BigSur-Release-WK2-Tests/
&gt; &gt; r271064%20(686)/fast/images/webp-as-image-diffs.html
&gt; &gt; 
&gt; &gt; it looks like this test is failing to load an image
&gt; 
&gt; Hmmmmmmmmm, this sounds super strange. Literally, this patch only changes
&gt; WebAssembly part.

That test is 

```
&lt;body&gt;
    &lt;img src=&quot;resources/green-400x400.webp&quot;&gt;
&lt;/body&gt;
```

And the test failure is because the image is not loaded in the actual result.
I don&apos;t think this patch is related to this test failure.
My guess is library update for webp etc.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1716596</commentid>
    <comment_count>24</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-12-25 10:36:57 -0800</bug_when>
    <thetext>(In reply to Yusuke Suzuki from comment #23)
&gt; (In reply to Yusuke Suzuki from comment #22)
&gt; &gt; (In reply to Truitt Savell from comment #21)
&gt; &gt; &gt; The changes in r271039 appear to have broken fast/images/webp-as-image.html
&gt; &gt; &gt; on Big Sur
&gt; &gt; &gt; 
&gt; &gt; &gt; History:
&gt; &gt; &gt; https://results.webkit.org/?suite=layout-tests&amp;test=fast%2Fimages%2Fwebp-as-
&gt; &gt; &gt; image.html
&gt; &gt; &gt; 
&gt; &gt; &gt; Diff:
&gt; &gt; &gt; https://build.webkit.org/results/Apple-BigSur-Release-WK2-Tests/
&gt; &gt; &gt; r271064%20(686)/fast/images/webp-as-image-diffs.html
&gt; &gt; &gt; 
&gt; &gt; &gt; it looks like this test is failing to load an image
&gt; &gt; 
&gt; &gt; Hmmmmmmmmm, this sounds super strange. Literally, this patch only changes
&gt; &gt; WebAssembly part.
&gt; 
&gt; That test is 
&gt; 
&gt; ```
&gt; &lt;body&gt;
&gt;     &lt;img src=&quot;resources/green-400x400.webp&quot;&gt;
&gt; &lt;/body&gt;
&gt; ```
&gt; 
&gt; And the test failure is because the image is not loaded in the actual result.
&gt; I don&apos;t think this patch is related to this test failure.
&gt; My guess is library update for webp etc.

Reproduced this failure with r271038. So this revision is not related to the failure.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1716785</commentid>
    <comment_count>25</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2020-12-28 13:17:00 -0800</bug_when>
    <thetext>Right, we had the version of macOS updated right then. This is almost certainly a dupe of bug 219977.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>415554</attachid>
            <date>2020-12-07 07:08:05 -0800</date>
            <delta_ts>2020-12-09 03:19:11 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-219600-20201207160803.patch</filename>
            <type>text/plain</type>
            <size>6439</size>
            <attacher>jtallon</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcwNTAxCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBi
ZDcwYjdkMDZmZmUwMjMzMjU4ODdkYjg4NDYzMTlmOGY2MmVmNzUwLi44YjBmOWM1ZTFmYTc3NzFj
Y2ZiZmUwMGEzNDAxYzI2Mzg2ZjEwYjRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxOSBAQAorMjAyMC0xMi0wNyAgSmVzc2ljYSBUYWxsb24gIDxqdGFsbG9uQGlnYWxpYS5j
b20+CisKKyAgICAgICAgW0pTQ10gQWRkIG1pbmltdW0gcGFyYW1ldGVyIHRvIHRoZSBXQVNNIEpT
LUFQSSBmb3IgTWVtb3J5ICYgVGFibGUuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMTk2MDAKKworICAgICAgICBUaGlzIHBhdGNoIGFkZHMgYSAibWlu
aW11bSIgcGVyYW1ldGVyIHRvIHRoZSBjb25zdHJ1Y3RvciBvZiBib3RoIFdlYkFzc2VtYmx5Lk1l
bW9yeSBhbmQKKyAgICAgICAgV2ViQXNzZW1ibHkuVGFibGUuIFRoaXMgcmVwcmVzZW50cyB0aGUg
c2FtZSB2YWx1ZSBhcyB0aGUgImluaXRpYWwiIHBlcmFtZXRlci4gVGhlIG5ldworICAgICAgICBw
ZXJhbWV0ZXIgbmFtZSBpcyBvdXRsaW5lZCBoZXJlIFsxXS4gSXQgaXMgcGFydCBvZiB0aGUgSlMg
dHlwZSByZWZsZWN0aW9uIHByb3Bvc2FsLgorCisgICAgICAgIFsxXTogaHR0cHM6Ly9naXRodWIu
Y29tL1dlYkFzc2VtYmx5L2pzLXR5cGVzL2Jsb2IvbWFzdGVyL3Byb3Bvc2Fscy9qcy10eXBlcy9P
dmVydmlldy5tZCNuYW1pbmctb2Ytc2l6ZS1saW1pdHMKKworICAgICAgICAqIEpTVGVzdHMvd2Fz
bS9qcy1hcGkvdGFibGUuanM6CisgICAgICAgICogSlNUZXN0cy93YXNtL2pzLWFwaS90ZXN0X21l
bW9yeV9jb25zdHJ1Y3Rvci5qczoKKyAgICAgICAgKiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseU1lbW9yeUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IuY3BwOgor
CiAyMDIwLTEyLTA2ICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CiAKICAgICAg
ICAgW0pTQ10gZ2V0IC8gc2V0IGZvciBvYmplY3QgbGl0ZXJhbCBhbmQgY2xhc3Mgc2hvdWxkIG5v
dCBiZSBlc2NhcGVkCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9X
ZWJBc3NlbWJseU1lbW9yeUNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93
YXNtL2pzL1dlYkFzc2VtYmx5TWVtb3J5Q29uc3RydWN0b3IuY3BwCmluZGV4IDI1NmViMGZmYzM0
YWI3MzViYzUzMjg3Yzc1ZjZiMDdlYzZiOGY3Y2UuLjFmZWJjNGVhNDZlM2NkMjkyZjA4NzE1MzFk
YTQyYjU5NjdlZDI2MDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pz
L1dlYkFzc2VtYmx5TWVtb3J5Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TWVtb3J5Q29uc3RydWN0b3IuY3BwCkBAIC02OCw4ICs2
OCwxNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0SlNXZWJBc3NlbWJseU1l
bW9yeSwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYgogICAgIFdhc206OlBhZ2VDb3VudCBpbml0
aWFsUGFnZUNvdW50OwogICAgIHsKICAgICAgICAgSWRlbnRpZmllciBpbml0aWFsID0gSWRlbnRp
Zmllcjo6ZnJvbVN0cmluZyh2bSwgImluaXRpYWwiKTsKLSAgICAgICAgSlNWYWx1ZSBtaW5TaXpl
VmFsdWUgPSBtZW1vcnlEZXNjcmlwdG9yLT5nZXQoZ2xvYmFsT2JqZWN0LCBpbml0aWFsKTsKKyAg
ICAgICAgSlNWYWx1ZSBpbml0U2l6ZVZhbHVlID0gbWVtb3J5RGVzY3JpcHRvci0+Z2V0KGdsb2Jh
bE9iamVjdCwgaW5pdGlhbCk7CiAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04odGhyb3dTY29w
ZSwgZW5jb2RlZEpTVmFsdWUoKSk7CisgICAgICAgIElkZW50aWZpZXIgbWluaW11bSA9IElkZW50
aWZpZXI6OmZyb21TdHJpbmcodm0sICJtaW5pbXVtIik7CisgICAgICAgIEpTVmFsdWUgbWluU2l6
ZVZhbHVlID0gbWVtb3J5RGVzY3JpcHRvci0+Z2V0KGdsb2JhbE9iamVjdCwgbWluaW11bSk7Cisg
ICAgICAgIGlmICghbWluU2l6ZVZhbHVlLmlzVW5kZWZpbmVkKCkgJiYgIWluaXRTaXplVmFsdWUu
aXNVbmRlZmluZWQoKSkgeworICAgICAgICAgICAgLy8gRXJyb3IgYmVjYXVzZSBib3RoIHNwZWNp
ZmllZC4KKyAgICAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dFeGNlcHRpb24o
Z2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCBjcmVhdGVUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCAi
V2ViQXNzZW1ibHkuTWVtb3J5IHNwZWNpZnkgZXhhY3RseSBvbmUgb2YgJ2luaXRpYWwnIG9yICdt
aW5pbXVtJyIpKSk7CisgICAgICAgIH0KKyAgICAgICAgaWYgKCFpbml0U2l6ZVZhbHVlLmlzVW5k
ZWZpbmVkKCkpCisgICAgICAgICAgICBtaW5TaXplVmFsdWUgPSBpbml0U2l6ZVZhbHVlOworCiAg
ICAgICAgIHVpbnQzMl90IHNpemUgPSB0b05vbldyYXBwaW5nVWludDMyKGdsb2JhbE9iamVjdCwg
bWluU2l6ZVZhbHVlKTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0aHJvd1Njb3BlLCBl
bmNvZGVkSlNWYWx1ZSgpKTsKICAgICAgICAgaWYgKCFXYXNtOjpQYWdlQ291bnQ6OmlzVmFsaWQo
c2l6ZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3Nl
bWJseVRhYmxlQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMv
V2ViQXNzZW1ibHlUYWJsZUNvbnN0cnVjdG9yLmNwcAppbmRleCA5MjVlMDZlNGFmYjE3YmIxMjIx
MjVjYzdiOWJkYjhhYmFiNTcwNWI5Li4yMjQ2NjUwMGQ5ZjY2MTkyNzJhNzVmZTI1MTYxNDRkZGU1
ZWUxNWRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3Nl
bWJseVRhYmxlQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNt
L2pzL1dlYkFzc2VtYmx5VGFibGVDb25zdHJ1Y3Rvci5jcHAKQEAgLTgxLDYgKzgxLDE0IEBAIEpT
Q19ERUZJTkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5VGFibGUsIChKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqCiAgICAgSWRlbnRpZmllciBpbml0aWFsSWRlbnQgPSBJZGVu
dGlmaWVyOjpmcm9tU3RyaW5nKHZtLCAiaW5pdGlhbCIpOwogICAgIEpTVmFsdWUgaW5pdGlhbFNp
emVWYWx1ZSA9IG1lbW9yeURlc2NyaXB0b3ItPmdldChnbG9iYWxPYmplY3QsIGluaXRpYWxJZGVu
dCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0aHJvd1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgp
KTsKKyAgICBJZGVudGlmaWVyIG1pbmltdW1JZGVudCA9IElkZW50aWZpZXI6OmZyb21TdHJpbmco
dm0sICJtaW5pbXVtIik7CisgICAgSlNWYWx1ZSBtaW5TaXplVmFsdWUgPSBtZW1vcnlEZXNjcmlw
dG9yLT5nZXQoZ2xvYmFsT2JqZWN0LCBtaW5pbXVtSWRlbnQpOworICAgIGlmICghaW5pdGlhbFNp
emVWYWx1ZS5pc1VuZGVmaW5lZCgpICYmICFtaW5TaXplVmFsdWUuaXNVbmRlZmluZWQoKSkKKyAg
ICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3Qs
IHRocm93U2NvcGUsIGNyZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmplY3QsICJXZWJBc3NlbWJseS5U
YWJsZSBleGFjdGx5IG9uZSBvZiAnaW5pdGlhbCcgb3IgJ21pbmltdW0nIikpKTsKKworICAgIGlm
ICghbWluU2l6ZVZhbHVlLmlzVW5kZWZpbmVkKCkpCisgICAgICAgIGluaXRpYWxTaXplVmFsdWUg
PSBtaW5TaXplVmFsdWU7CisKICAgICB1aW50MzJfdCBpbml0aWFsID0gdG9Ob25XcmFwcGluZ1Vp
bnQzMihnbG9iYWxPYmplY3QsIGluaXRpYWxTaXplVmFsdWUpOwogICAgIFJFVFVSTl9JRl9FWENF
UFRJT04odGhyb3dTY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAKZGlmZiAtLWdpdCBhL0pTVGVz
dHMvd2FzbS9qcy1hcGkvdGFibGUuanMgYi9KU1Rlc3RzL3dhc20vanMtYXBpL3RhYmxlLmpzCmlu
ZGV4IGQ0MDlhNDgxMDhkMmExZTNiNTZkMGEzMmUzZjBlOWQxNDA5ODYwZTMuLmUyOTM0ZjQyYmY4
ZTU3YWUyYWMwMDM4ZmI3NjhiZWVjM2NiODBkZDcgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvd2FzbS9q
cy1hcGkvdGFibGUuanMKKysrIGIvSlNUZXN0cy93YXNtL2pzLWFwaS90YWJsZS5qcwpAQCAtMzY0
LDMgKzM2NCwyOSBAQCBhc3NlcnQudGhyb3dzKCgpID0+IFdlYkFzc2VtYmx5LlRhYmxlLnByb3Rv
dHlwZS5ncm93KHVuZGVmaW5lZCksIFR5cGVFcnJvciwgYGV4cAogICAgIGFzc2VydC5lcShpbnN0
YW5jZS5leHBvcnRzLnRhYmxlMC5sZW5ndGgsIDApOwogICAgIGFzc2VydC50cnV0aHkoaW5zdGFu
Y2UuZXhwb3J0cy50YWJsZSBpbnN0YW5jZW9mIFdlYkFzc2VtYmx5LlRhYmxlKTsKIH0KKworewor
ICAgIGNvbnN0IGFyZ3MgPSB7bWluaW11bTogNSwgZWxlbWVudDogImZ1bmNyZWYifQorICAgIGxl
dCBtaW5pbXVtID0gZmFsc2UKKyAgICBjb25zdCBwcm94eSA9IG5ldyBQcm94eShhcmdzLCB7Cisg
ICAgICAgIGdldCh0YXJnZXQsIHByb3AsIHJlY2VpdmVyKSB7CisgICAgICAgICAgICBpZiAocHJv
cCA9PT0gIm1pbmltdW0iKSB7CisgICAgICAgICAgICAgICAgbWluaW11bSA9IHRydWU7CisgICAg
ICAgICAgICB9CisgICAgICAgICAgICByZXR1cm4gUmVmbGVjdC5nZXQoLi4uYXJndW1lbnRzKTsK
KyAgICAgICAgfQorICAgIH0pCisgICAgY29uc3QgdGFibGUgPSBuZXcgV2ViQXNzZW1ibHkuVGFi
bGUocHJveHkpOworICAgIGFzc2VydC5lcSh0YWJsZS5sZW5ndGgsIDUpOworICAgIGFzc2VydC50
cnV0aHkobWluaW11bSk7CisKKyAgICBsZXQgdGhyZXcgPSBmYWxzZTsKKyAgICB0cnkgeworICAg
ICAgICBuZXcgV2ViQXNzZW1ibHkuVGFibGUoe21pbmltdW06IDUsIGluaXRpYWw6IDUsIGVsZW1l
bnQ6ICJmdW5jcmVmIn0pOworICAgIH0gY2F0Y2ggKGUpIHsKKyAgICAgICAgYXNzZXJ0LnRydXRo
eShlIGluc3RhbmNlb2YgVHlwZUVycm9yKTsKKyAgICAgICAgYXNzZXJ0LmVxKGUubWVzc2FnZSwg
IldlYkFzc2VtYmx5LlRhYmxlIGV4YWN0bHkgb25lIG9mICdpbml0aWFsJyBvciAnbWluaW11bSci
KQorICAgICAgICB0aHJldyA9IHRydWU7CisgICAgfQorICAgIGFzc2VydC50cnV0aHkodGhyZXcp
OworfQpkaWZmIC0tZ2l0IGEvSlNUZXN0cy93YXNtL2pzLWFwaS90ZXN0X21lbW9yeV9jb25zdHJ1
Y3Rvci5qcyBiL0pTVGVzdHMvd2FzbS9qcy1hcGkvdGVzdF9tZW1vcnlfY29uc3RydWN0b3IuanMK
aW5kZXggYjg4OTNlYWI3YWYyZmFjMGVhMzQ4YzVlZTUyNTY3YzNjZTU0YzZkOS4uMjU3OGI0MWE5
MDZlNzIwYWIwMmY0ZDM5OTc1ODY4NjgzNzVjMmNiMSAxMDA2NDQKLS0tIGEvSlNUZXN0cy93YXNt
L2pzLWFwaS90ZXN0X21lbW9yeV9jb25zdHJ1Y3Rvci5qcworKysgYi9KU1Rlc3RzL3dhc20vanMt
YXBpL3Rlc3RfbWVtb3J5X2NvbnN0cnVjdG9yLmpzCkBAIC04MSwzICs4MSwyOSBAQCBmdW5jdGlv
biB0ZXN0SW52YWxpZFNpemUoZGVzY3JpcHRpb24sIHByb3BOYW1lKSB7CiAgICAgfQogICAgIGFz
c2VydCh0aHJldyk7CiB9CisKK3sKKyAgICBjb25zdCBhcmdzID0ge21pbmltdW06IDV9OworICAg
IGxldCBtaW5pbXVtID0gZmFsc2U7CisgICAgY29uc3QgcHJveHkgPSBuZXcgUHJveHkoYXJncywg
eworICAgICAgICBnZXQodGFyZ2V0LCBwcm9wLCByZWNlaXZlcikgeworICAgICAgICAgICAgaWYg
KHByb3AgPT09ICJtaW5pbXVtIikgeworICAgICAgICAgICAgICAgIG1pbmltdW0gPSB0cnVlOwor
ICAgICAgICAgICAgfQorICAgICAgICAgICAgcmV0dXJuIFJlZmxlY3QuZ2V0KC4uLmFyZ3VtZW50
cyk7CisgICAgICAgIH0KKyAgICB9KQorICAgIGNvbnN0IG1lbSA9IG5ldyBXZWJBc3NlbWJseS5N
ZW1vcnkocHJveHkpOworICAgIGFzc2VydChtZW0uYnVmZmVyLmJ5dGVMZW5ndGggPT09IDUgKiBw
YWdlU2l6ZSk7CisgICAgYXNzZXJ0KG1pbmltdW0pOworCisgICAgbGV0IHRocmV3ID0gZmFsc2U7
CisgICAgdHJ5IHsKKyAgICAgICAgbmV3IFdlYkFzc2VtYmx5Lk1lbW9yeSh7bWluaW11bTogNSwg
aW5pdGlhbDogNX0pOworICAgIH0gY2F0Y2ggKGUpIHsKKyAgICAgICAgYXNzZXJ0KGUgaW5zdGFu
Y2VvZiBUeXBlRXJyb3IpOworICAgICAgICBhc3NlcnQoZS5tZXNzYWdlID09PSAiV2ViQXNzZW1i
bHkuTWVtb3J5IHNwZWNpZnkgZXhhY3RseSBvbmUgb2YgJ2luaXRpYWwnIG9yICdtaW5pbXVtJyIp
OworICAgICAgICB0aHJldyA9IHRydWU7CisgICAgfQorICAgIGFzc2VydCh0aHJldyk7Cit9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>415736</attachid>
            <date>2020-12-09 03:19:17 -0800</date>
            <delta_ts>2020-12-15 14:24:46 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-219600-20201209121915.patch</filename>
            <type>text/plain</type>
            <size>6463</size>
            <attacher>jtallon</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcwNTAxCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBi
ZDcwYjdkMDZmZmUwMjMzMjU4ODdkYjg4NDYzMTlmOGY2MmVmNzUwLi44YjBmOWM1ZTFmYTc3NzFj
Y2ZiZmUwMGEzNDAxYzI2Mzg2ZjEwYjRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxOSBAQAorMjAyMC0xMi0wNyAgSmVzc2ljYSBUYWxsb24gIDxqdGFsbG9uQGlnYWxpYS5j
b20+CisKKyAgICAgICAgW0pTQ10gQWRkIG1pbmltdW0gcGFyYW1ldGVyIHRvIHRoZSBXQVNNIEpT
LUFQSSBmb3IgTWVtb3J5ICYgVGFibGUuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMTk2MDAKKworICAgICAgICBUaGlzIHBhdGNoIGFkZHMgYSAibWlu
aW11bSIgcGVyYW1ldGVyIHRvIHRoZSBjb25zdHJ1Y3RvciBvZiBib3RoIFdlYkFzc2VtYmx5Lk1l
bW9yeSBhbmQKKyAgICAgICAgV2ViQXNzZW1ibHkuVGFibGUuIFRoaXMgcmVwcmVzZW50cyB0aGUg
c2FtZSB2YWx1ZSBhcyB0aGUgImluaXRpYWwiIHBlcmFtZXRlci4gVGhlIG5ldworICAgICAgICBw
ZXJhbWV0ZXIgbmFtZSBpcyBvdXRsaW5lZCBoZXJlIFsxXS4gSXQgaXMgcGFydCBvZiB0aGUgSlMg
dHlwZSByZWZsZWN0aW9uIHByb3Bvc2FsLgorCisgICAgICAgIFsxXTogaHR0cHM6Ly9naXRodWIu
Y29tL1dlYkFzc2VtYmx5L2pzLXR5cGVzL2Jsb2IvbWFzdGVyL3Byb3Bvc2Fscy9qcy10eXBlcy9P
dmVydmlldy5tZCNuYW1pbmctb2Ytc2l6ZS1saW1pdHMKKworICAgICAgICAqIEpTVGVzdHMvd2Fz
bS9qcy1hcGkvdGFibGUuanM6CisgICAgICAgICogSlNUZXN0cy93YXNtL2pzLWFwaS90ZXN0X21l
bW9yeV9jb25zdHJ1Y3Rvci5qczoKKyAgICAgICAgKiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseU1lbW9yeUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IuY3BwOgor
CiAyMDIwLTEyLTA2ICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CiAKICAgICAg
ICAgW0pTQ10gZ2V0IC8gc2V0IGZvciBvYmplY3QgbGl0ZXJhbCBhbmQgY2xhc3Mgc2hvdWxkIG5v
dCBiZSBlc2NhcGVkCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9X
ZWJBc3NlbWJseU1lbW9yeUNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93
YXNtL2pzL1dlYkFzc2VtYmx5TWVtb3J5Q29uc3RydWN0b3IuY3BwCmluZGV4IDI1NmViMGZmYzM0
YWI3MzViYzUzMjg3Yzc1ZjZiMDdlYzZiOGY3Y2UuLjk1NDBhNGQ4ZTllYjhhY2U5Njg5MDI3NTE2
MWJkODliNTIzODdjNDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pz
L1dlYkFzc2VtYmx5TWVtb3J5Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TWVtb3J5Q29uc3RydWN0b3IuY3BwCkBAIC02OCw4ICs2
OCwxOCBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0SlNXZWJBc3NlbWJseU1l
bW9yeSwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYgogICAgIFdhc206OlBhZ2VDb3VudCBpbml0
aWFsUGFnZUNvdW50OwogICAgIHsKICAgICAgICAgSWRlbnRpZmllciBpbml0aWFsID0gSWRlbnRp
Zmllcjo6ZnJvbVN0cmluZyh2bSwgImluaXRpYWwiKTsKLSAgICAgICAgSlNWYWx1ZSBtaW5TaXpl
VmFsdWUgPSBtZW1vcnlEZXNjcmlwdG9yLT5nZXQoZ2xvYmFsT2JqZWN0LCBpbml0aWFsKTsKKyAg
ICAgICAgSlNWYWx1ZSBpbml0U2l6ZVZhbHVlID0gbWVtb3J5RGVzY3JpcHRvci0+Z2V0KGdsb2Jh
bE9iamVjdCwgaW5pdGlhbCk7CiAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04odGhyb3dTY29w
ZSwgZW5jb2RlZEpTVmFsdWUoKSk7CisgICAgICAgIElkZW50aWZpZXIgbWluaW11bSA9IElkZW50
aWZpZXI6OmZyb21TdHJpbmcodm0sICJtaW5pbXVtIik7CisgICAgICAgIEpTVmFsdWUgbWluU2l6
ZVZhbHVlID0gbWVtb3J5RGVzY3JpcHRvci0+Z2V0KGdsb2JhbE9iamVjdCwgbWluaW11bSk7Cisg
ICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04odGhyb3dTY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7
CisgICAgICAgIGlmICghbWluU2l6ZVZhbHVlLmlzVW5kZWZpbmVkKCkgJiYgIWluaXRTaXplVmFs
dWUuaXNVbmRlZmluZWQoKSkgeworICAgICAgICAgICAgLy8gRXJyb3IgYmVjYXVzZSBib3RoIHNw
ZWNpZmllZC4KKyAgICAgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVj
dCwgdGhyb3dTY29wZSwgIldlYkFzc2VtYmx5Lk1lbW9yeSBzcGVjaWZ5IGV4YWN0bHkgb25lIG9m
ICdpbml0aWFsJyBvciAnbWluaW11bSciKTsKKyAgICAgICAgfQorICAgICAgICBpZiAoIWluaXRT
aXplVmFsdWUuaXNVbmRlZmluZWQoKSkKKyAgICAgICAgICAgIG1pblNpemVWYWx1ZSA9IGluaXRT
aXplVmFsdWU7CisKICAgICAgICAgdWludDMyX3Qgc2l6ZSA9IHRvTm9uV3JhcHBpbmdVaW50MzIo
Z2xvYmFsT2JqZWN0LCBtaW5TaXplVmFsdWUpOwogICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9O
KHRocm93U2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogICAgICAgICBpZiAoIVdhc206OlBhZ2VD
b3VudDo6aXNWYWxpZChzaXplKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93
YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IuY3BwCmluZGV4IDkyNWUw
NmU0YWZiMTdiYjEyMjEyNWNjN2I5YmRiOGFiYWI1NzA1YjkuLmFiYWNjM2ZjYTM1OTBlMzA4NjBj
OWNjYjc1MDc4Njc2NDI3NmEwMWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93
YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlUYWJsZUNvbnN0cnVjdG9yLmNwcApAQCAtODEs
NiArODEsMTUgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEpTV2ViQXNzZW1i
bHlUYWJsZSwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmoKICAgICBJZGVudGlmaWVyIGluaXRp
YWxJZGVudCA9IElkZW50aWZpZXI6OmZyb21TdHJpbmcodm0sICJpbml0aWFsIik7CiAgICAgSlNW
YWx1ZSBpbml0aWFsU2l6ZVZhbHVlID0gbWVtb3J5RGVzY3JpcHRvci0+Z2V0KGdsb2JhbE9iamVj
dCwgaW5pdGlhbElkZW50KTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHRocm93U2NvcGUsIGVu
Y29kZWRKU1ZhbHVlKCkpOworICAgIElkZW50aWZpZXIgbWluaW11bUlkZW50ID0gSWRlbnRpZmll
cjo6ZnJvbVN0cmluZyh2bSwgIm1pbmltdW0iKTsKKyAgICBKU1ZhbHVlIG1pblNpemVWYWx1ZSA9
IG1lbW9yeURlc2NyaXB0b3ItPmdldChnbG9iYWxPYmplY3QsIG1pbmltdW1JZGVudCk7CisgICAg
UkVUVVJOX0lGX0VYQ0VQVElPTih0aHJvd1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKKyAgICBp
ZiAoIWluaXRpYWxTaXplVmFsdWUuaXNVbmRlZmluZWQoKSAmJiAhbWluU2l6ZVZhbHVlLmlzVW5k
ZWZpbmVkKCkpCisgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwg
dGhyb3dTY29wZSwgIldlYkFzc2VtYmx5LlRhYmxlIGV4YWN0bHkgb25lIG9mICdpbml0aWFsJyBv
ciAnbWluaW11bSciKTsKKworICAgIGlmICghbWluU2l6ZVZhbHVlLmlzVW5kZWZpbmVkKCkpCisg
ICAgICAgIGluaXRpYWxTaXplVmFsdWUgPSBtaW5TaXplVmFsdWU7CisKICAgICB1aW50MzJfdCBp
bml0aWFsID0gdG9Ob25XcmFwcGluZ1VpbnQzMihnbG9iYWxPYmplY3QsIGluaXRpYWxTaXplVmFs
dWUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04odGhyb3dTY29wZSwgZW5jb2RlZEpTVmFsdWUo
KSk7CiAKZGlmZiAtLWdpdCBhL0pTVGVzdHMvd2FzbS9qcy1hcGkvdGFibGUuanMgYi9KU1Rlc3Rz
L3dhc20vanMtYXBpL3RhYmxlLmpzCmluZGV4IGQ0MDlhNDgxMDhkMmExZTNiNTZkMGEzMmUzZjBl
OWQxNDA5ODYwZTMuLmUyOTM0ZjQyYmY4ZTU3YWUyYWMwMDM4ZmI3NjhiZWVjM2NiODBkZDcgMTAw
NjQ0Ci0tLSBhL0pTVGVzdHMvd2FzbS9qcy1hcGkvdGFibGUuanMKKysrIGIvSlNUZXN0cy93YXNt
L2pzLWFwaS90YWJsZS5qcwpAQCAtMzY0LDMgKzM2NCwyOSBAQCBhc3NlcnQudGhyb3dzKCgpID0+
IFdlYkFzc2VtYmx5LlRhYmxlLnByb3RvdHlwZS5ncm93KHVuZGVmaW5lZCksIFR5cGVFcnJvciwg
YGV4cAogICAgIGFzc2VydC5lcShpbnN0YW5jZS5leHBvcnRzLnRhYmxlMC5sZW5ndGgsIDApOwog
ICAgIGFzc2VydC50cnV0aHkoaW5zdGFuY2UuZXhwb3J0cy50YWJsZSBpbnN0YW5jZW9mIFdlYkFz
c2VtYmx5LlRhYmxlKTsKIH0KKworeworICAgIGNvbnN0IGFyZ3MgPSB7bWluaW11bTogNSwgZWxl
bWVudDogImZ1bmNyZWYifQorICAgIGxldCBtaW5pbXVtID0gZmFsc2UKKyAgICBjb25zdCBwcm94
eSA9IG5ldyBQcm94eShhcmdzLCB7CisgICAgICAgIGdldCh0YXJnZXQsIHByb3AsIHJlY2VpdmVy
KSB7CisgICAgICAgICAgICBpZiAocHJvcCA9PT0gIm1pbmltdW0iKSB7CisgICAgICAgICAgICAg
ICAgbWluaW11bSA9IHRydWU7CisgICAgICAgICAgICB9CisgICAgICAgICAgICByZXR1cm4gUmVm
bGVjdC5nZXQoLi4uYXJndW1lbnRzKTsKKyAgICAgICAgfQorICAgIH0pCisgICAgY29uc3QgdGFi
bGUgPSBuZXcgV2ViQXNzZW1ibHkuVGFibGUocHJveHkpOworICAgIGFzc2VydC5lcSh0YWJsZS5s
ZW5ndGgsIDUpOworICAgIGFzc2VydC50cnV0aHkobWluaW11bSk7CisKKyAgICBsZXQgdGhyZXcg
PSBmYWxzZTsKKyAgICB0cnkgeworICAgICAgICBuZXcgV2ViQXNzZW1ibHkuVGFibGUoe21pbmlt
dW06IDUsIGluaXRpYWw6IDUsIGVsZW1lbnQ6ICJmdW5jcmVmIn0pOworICAgIH0gY2F0Y2ggKGUp
IHsKKyAgICAgICAgYXNzZXJ0LnRydXRoeShlIGluc3RhbmNlb2YgVHlwZUVycm9yKTsKKyAgICAg
ICAgYXNzZXJ0LmVxKGUubWVzc2FnZSwgIldlYkFzc2VtYmx5LlRhYmxlIGV4YWN0bHkgb25lIG9m
ICdpbml0aWFsJyBvciAnbWluaW11bSciKQorICAgICAgICB0aHJldyA9IHRydWU7CisgICAgfQor
ICAgIGFzc2VydC50cnV0aHkodGhyZXcpOworfQpkaWZmIC0tZ2l0IGEvSlNUZXN0cy93YXNtL2pz
LWFwaS90ZXN0X21lbW9yeV9jb25zdHJ1Y3Rvci5qcyBiL0pTVGVzdHMvd2FzbS9qcy1hcGkvdGVz
dF9tZW1vcnlfY29uc3RydWN0b3IuanMKaW5kZXggYjg4OTNlYWI3YWYyZmFjMGVhMzQ4YzVlZTUy
NTY3YzNjZTU0YzZkOS4uMjU3OGI0MWE5MDZlNzIwYWIwMmY0ZDM5OTc1ODY4NjgzNzVjMmNiMSAx
MDA2NDQKLS0tIGEvSlNUZXN0cy93YXNtL2pzLWFwaS90ZXN0X21lbW9yeV9jb25zdHJ1Y3Rvci5q
cworKysgYi9KU1Rlc3RzL3dhc20vanMtYXBpL3Rlc3RfbWVtb3J5X2NvbnN0cnVjdG9yLmpzCkBA
IC04MSwzICs4MSwyOSBAQCBmdW5jdGlvbiB0ZXN0SW52YWxpZFNpemUoZGVzY3JpcHRpb24sIHBy
b3BOYW1lKSB7CiAgICAgfQogICAgIGFzc2VydCh0aHJldyk7CiB9CisKK3sKKyAgICBjb25zdCBh
cmdzID0ge21pbmltdW06IDV9OworICAgIGxldCBtaW5pbXVtID0gZmFsc2U7CisgICAgY29uc3Qg
cHJveHkgPSBuZXcgUHJveHkoYXJncywgeworICAgICAgICBnZXQodGFyZ2V0LCBwcm9wLCByZWNl
aXZlcikgeworICAgICAgICAgICAgaWYgKHByb3AgPT09ICJtaW5pbXVtIikgeworICAgICAgICAg
ICAgICAgIG1pbmltdW0gPSB0cnVlOworICAgICAgICAgICAgfQorICAgICAgICAgICAgcmV0dXJu
IFJlZmxlY3QuZ2V0KC4uLmFyZ3VtZW50cyk7CisgICAgICAgIH0KKyAgICB9KQorICAgIGNvbnN0
IG1lbSA9IG5ldyBXZWJBc3NlbWJseS5NZW1vcnkocHJveHkpOworICAgIGFzc2VydChtZW0uYnVm
ZmVyLmJ5dGVMZW5ndGggPT09IDUgKiBwYWdlU2l6ZSk7CisgICAgYXNzZXJ0KG1pbmltdW0pOwor
CisgICAgbGV0IHRocmV3ID0gZmFsc2U7CisgICAgdHJ5IHsKKyAgICAgICAgbmV3IFdlYkFzc2Vt
Ymx5Lk1lbW9yeSh7bWluaW11bTogNSwgaW5pdGlhbDogNX0pOworICAgIH0gY2F0Y2ggKGUpIHsK
KyAgICAgICAgYXNzZXJ0KGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpOworICAgICAgICBhc3NlcnQo
ZS5tZXNzYWdlID09PSAiV2ViQXNzZW1ibHkuTWVtb3J5IHNwZWNpZnkgZXhhY3RseSBvbmUgb2Yg
J2luaXRpYWwnIG9yICdtaW5pbXVtJyIpOworICAgICAgICB0aHJldyA9IHRydWU7CisgICAgfQor
ICAgIGFzc2VydCh0aHJldyk7Cit9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>416294</attachid>
            <date>2020-12-15 14:24:52 -0800</date>
            <delta_ts>2020-12-18 00:21:25 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-219600-20201215232451.patch</filename>
            <type>text/plain</type>
            <size>6528</size>
            <attacher>jtallon</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcwMTY1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBk
NGMwOWYyOGVjY2I2MGRkYWYwMzgxYTJkMGI1YWMwOWNhZjVjMDMxLi40OWMwODg2ZDkxZDJhMDYx
NmI2ZjYzOWZmZDlmMDcxNjgxM2U0MGNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxOSBAQAorMjAyMC0xMi0wNyAgSmVzc2ljYSBUYWxsb24gIDxqdGFsbG9uQGlnYWxpYS5j
b20+CisKKyAgICAgICAgW0pTQ10gQWRkIG1pbmltdW0gcGFyYW1ldGVyIHRvIHRoZSBXQVNNIEpT
LUFQSSBmb3IgTWVtb3J5ICYgVGFibGUuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMTk2MDAKKworICAgICAgICBUaGlzIHBhdGNoIGFkZHMgYSAibWlu
aW11bSIgcGVyYW1ldGVyIHRvIHRoZSBjb25zdHJ1Y3RvciBvZiBib3RoIFdlYkFzc2VtYmx5Lk1l
bW9yeSBhbmQKKyAgICAgICAgV2ViQXNzZW1ibHkuVGFibGUuIFRoaXMgcmVwcmVzZW50cyB0aGUg
c2FtZSB2YWx1ZSBhcyB0aGUgImluaXRpYWwiIHBlcmFtZXRlci4gVGhlIG5ldworICAgICAgICBw
ZXJhbWV0ZXIgbmFtZSBpcyBvdXRsaW5lZCBoZXJlIFsxXS4gSXQgaXMgcGFydCBvZiB0aGUgSlMg
dHlwZSByZWZsZWN0aW9uIHByb3Bvc2FsLgorCisgICAgICAgIFsxXTogaHR0cHM6Ly9naXRodWIu
Y29tL1dlYkFzc2VtYmx5L2pzLXR5cGVzL2Jsb2IvbWFzdGVyL3Byb3Bvc2Fscy9qcy10eXBlcy9P
dmVydmlldy5tZCNuYW1pbmctb2Ytc2l6ZS1saW1pdHMKKworICAgICAgICAqIEpTVGVzdHMvd2Fz
bS9qcy1hcGkvdGFibGUuanM6CisgICAgICAgICogSlNUZXN0cy93YXNtL2pzLWFwaS90ZXN0X21l
bW9yeV9jb25zdHJ1Y3Rvci5qczoKKyAgICAgICAgKiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseU1lbW9yeUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IuY3BwOgor
CiAyMDIwLTExLTE5ICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CiAKICAgICAg
ICAgW0pTQ10gRW5hYmxlIHByaXZhdGUgaW5zdGFuY2UgYW5kIHN0YXRpYyBmaWVsZHMKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TWVtb3J5Q29u
c3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlN
ZW1vcnlDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMjU2ZWIwZmZjMzRhYjczNWJjNTMyODdjNzVmNmIw
N2VjNmI4ZjdjZS4uY2E0YjZhODQ3NTc0NDY1YTg2NmE4NDg0MThiNjMxM2M0YjhmMWVjMCAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNZW1vcnlD
b25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNz
ZW1ibHlNZW1vcnlDb25zdHJ1Y3Rvci5jcHAKQEAgLTY4LDggKzY4LDE4IEBAIEpTQ19ERUZJTkVf
SE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5TWVtb3J5LCAoSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iCiAgICAgV2FzbTo6UGFnZUNvdW50IGluaXRpYWxQYWdlQ291bnQ7CiAgICAg
ewogICAgICAgICBJZGVudGlmaWVyIGluaXRpYWwgPSBJZGVudGlmaWVyOjpmcm9tU3RyaW5nKHZt
LCAiaW5pdGlhbCIpOwotICAgICAgICBKU1ZhbHVlIG1pblNpemVWYWx1ZSA9IG1lbW9yeURlc2Ny
aXB0b3ItPmdldChnbG9iYWxPYmplY3QsIGluaXRpYWwpOworICAgICAgICBKU1ZhbHVlIGluaXRT
aXplVmFsdWUgPSBtZW1vcnlEZXNjcmlwdG9yLT5nZXQoZ2xvYmFsT2JqZWN0LCBpbml0aWFsKTsK
ICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0aHJvd1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgp
KTsKKyAgICAgICAgSWRlbnRpZmllciBtaW5pbXVtID0gSWRlbnRpZmllcjo6ZnJvbVN0cmluZyh2
bSwgIm1pbmltdW0iKTsKKyAgICAgICAgSlNWYWx1ZSBtaW5TaXplVmFsdWUgPSBtZW1vcnlEZXNj
cmlwdG9yLT5nZXQoZ2xvYmFsT2JqZWN0LCBtaW5pbXVtKTsKKyAgICAgICAgUkVUVVJOX0lGX0VY
Q0VQVElPTih0aHJvd1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKKyAgICAgICAgaWYgKCFtaW5T
aXplVmFsdWUuaXNVbmRlZmluZWQoKSAmJiAhaW5pdFNpemVWYWx1ZS5pc1VuZGVmaW5lZCgpKSB7
CisgICAgICAgICAgICAvLyBFcnJvciBiZWNhdXNlIGJvdGggc3BlY2lmaWVkLgorICAgICAgICAg
ICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCAiV2Vi
QXNzZW1ibHkuTWVtb3J5ICdpbml0aWFsJyBhbmQgJ21pbmltdW0nIG9wdGlvbnMgYXJlIHNwZWNp
ZmllZCBhdCB0aGUgc2FtZSB0aW1lIik7CisgICAgICAgIH0KKyAgICAgICAgaWYgKCFpbml0U2l6
ZVZhbHVlLmlzVW5kZWZpbmVkKCkpCisgICAgICAgICAgICBtaW5TaXplVmFsdWUgPSBpbml0U2l6
ZVZhbHVlOworCiAgICAgICAgIHVpbnQzMl90IHNpemUgPSB0b05vbldyYXBwaW5nVWludDMyKGds
b2JhbE9iamVjdCwgbWluU2l6ZVZhbHVlKTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0
aHJvd1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICAgICAgaWYgKCFXYXNtOjpQYWdlQ291
bnQ6OmlzVmFsaWQoc2l6ZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vanMvV2ViQXNzZW1ibHlUYWJsZUNvbnN0cnVjdG9yLmNwcAppbmRleCA5MjVlMDZl
NGFmYjE3YmIxMjIxMjVjYzdiOWJkYjhhYmFiNTcwNWI5Li44MjZlNThlYjVjMzgyNzFhOTlhNWFh
MDE3NWNlYTA5MmY1OGExZGQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVDb25zdHJ1Y3Rvci5jcHAKQEAgLTgxLDYg
KzgxLDE1IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5
VGFibGUsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqCiAgICAgSWRlbnRpZmllciBpbml0aWFs
SWRlbnQgPSBJZGVudGlmaWVyOjpmcm9tU3RyaW5nKHZtLCAiaW5pdGlhbCIpOwogICAgIEpTVmFs
dWUgaW5pdGlhbFNpemVWYWx1ZSA9IG1lbW9yeURlc2NyaXB0b3ItPmdldChnbG9iYWxPYmplY3Qs
IGluaXRpYWxJZGVudCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0aHJvd1Njb3BlLCBlbmNv
ZGVkSlNWYWx1ZSgpKTsKKyAgICBJZGVudGlmaWVyIG1pbmltdW1JZGVudCA9IElkZW50aWZpZXI6
OmZyb21TdHJpbmcodm0sICJtaW5pbXVtIik7CisgICAgSlNWYWx1ZSBtaW5TaXplVmFsdWUgPSBt
ZW1vcnlEZXNjcmlwdG9yLT5nZXQoZ2xvYmFsT2JqZWN0LCBtaW5pbXVtSWRlbnQpOworICAgIFJF
VFVSTl9JRl9FWENFUFRJT04odGhyb3dTY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CisgICAgaWYg
KCFpbml0aWFsU2l6ZVZhbHVlLmlzVW5kZWZpbmVkKCkgJiYgIW1pblNpemVWYWx1ZS5pc1VuZGVm
aW5lZCgpKQorICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHRo
cm93U2NvcGUsICJXZWJBc3NlbWJseS5UYWJsZSAnaW5pdGlhbCcgYW5kICdtaW5pbXVtJyBvcHRp
b25zIGFyZSBzcGVjaWZpZWQgYXQgdGhlIHNhbWUgdGltZSIpOworCisgICAgaWYgKCFtaW5TaXpl
VmFsdWUuaXNVbmRlZmluZWQoKSkKKyAgICAgICAgaW5pdGlhbFNpemVWYWx1ZSA9IG1pblNpemVW
YWx1ZTsKKwogICAgIHVpbnQzMl90IGluaXRpYWwgPSB0b05vbldyYXBwaW5nVWludDMyKGdsb2Jh
bE9iamVjdCwgaW5pdGlhbFNpemVWYWx1ZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0aHJv
d1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKIApkaWZmIC0tZ2l0IGEvSlNUZXN0cy93YXNtL2pz
LWFwaS90YWJsZS5qcyBiL0pTVGVzdHMvd2FzbS9qcy1hcGkvdGFibGUuanMKaW5kZXggZDQwOWE0
ODEwOGQyYTFlM2I1NmQwYTMyZTNmMGU5ZDE0MDk4NjBlMy4uZGI3ODc4ZjBjYTIzZGM5ZTFmMTk2
MmE4ZjU2NTY3MDY5ODhlMDJkZiAxMDA2NDQKLS0tIGEvSlNUZXN0cy93YXNtL2pzLWFwaS90YWJs
ZS5qcworKysgYi9KU1Rlc3RzL3dhc20vanMtYXBpL3RhYmxlLmpzCkBAIC0zNjQsMyArMzY0LDI5
IEBAIGFzc2VydC50aHJvd3MoKCkgPT4gV2ViQXNzZW1ibHkuVGFibGUucHJvdG90eXBlLmdyb3co
dW5kZWZpbmVkKSwgVHlwZUVycm9yLCBgZXhwCiAgICAgYXNzZXJ0LmVxKGluc3RhbmNlLmV4cG9y
dHMudGFibGUwLmxlbmd0aCwgMCk7CiAgICAgYXNzZXJ0LnRydXRoeShpbnN0YW5jZS5leHBvcnRz
LnRhYmxlIGluc3RhbmNlb2YgV2ViQXNzZW1ibHkuVGFibGUpOwogfQorCit7CisgICAgY29uc3Qg
YXJncyA9IHttaW5pbXVtOiA1LCBlbGVtZW50OiAiZnVuY3JlZiJ9CisgICAgbGV0IG1pbmltdW0g
PSBmYWxzZQorICAgIGNvbnN0IHByb3h5ID0gbmV3IFByb3h5KGFyZ3MsIHsKKyAgICAgICAgZ2V0
KHRhcmdldCwgcHJvcCwgcmVjZWl2ZXIpIHsKKyAgICAgICAgICAgIGlmIChwcm9wID09PSAibWlu
aW11bSIpIHsKKyAgICAgICAgICAgICAgICBtaW5pbXVtID0gdHJ1ZTsKKyAgICAgICAgICAgIH0K
KyAgICAgICAgICAgIHJldHVybiBSZWZsZWN0LmdldCguLi5hcmd1bWVudHMpOworICAgICAgICB9
CisgICAgfSkKKyAgICBjb25zdCB0YWJsZSA9IG5ldyBXZWJBc3NlbWJseS5UYWJsZShwcm94eSk7
CisgICAgYXNzZXJ0LmVxKHRhYmxlLmxlbmd0aCwgNSk7CisgICAgYXNzZXJ0LnRydXRoeShtaW5p
bXVtKTsKKworICAgIGxldCB0aHJldyA9IGZhbHNlOworICAgIHRyeSB7CisgICAgICAgIG5ldyBX
ZWJBc3NlbWJseS5UYWJsZSh7bWluaW11bTogNSwgaW5pdGlhbDogNSwgZWxlbWVudDogImZ1bmNy
ZWYifSk7CisgICAgfSBjYXRjaCAoZSkgeworICAgICAgICBhc3NlcnQudHJ1dGh5KGUgaW5zdGFu
Y2VvZiBUeXBlRXJyb3IpOworICAgICAgICBhc3NlcnQuZXEoZS5tZXNzYWdlLCAiV2ViQXNzZW1i
bHkuVGFibGUgJ2luaXRpYWwnIGFuZCAnbWluaW11bScgb3B0aW9ucyBhcmUgc3BlY2lmaWVkIGF0
IHRoZSBzYW1lIHRpbWUiKQorICAgICAgICB0aHJldyA9IHRydWU7CisgICAgfQorICAgIGFzc2Vy
dC50cnV0aHkodGhyZXcpOworfQpkaWZmIC0tZ2l0IGEvSlNUZXN0cy93YXNtL2pzLWFwaS90ZXN0
X21lbW9yeV9jb25zdHJ1Y3Rvci5qcyBiL0pTVGVzdHMvd2FzbS9qcy1hcGkvdGVzdF9tZW1vcnlf
Y29uc3RydWN0b3IuanMKaW5kZXggYjg4OTNlYWI3YWYyZmFjMGVhMzQ4YzVlZTUyNTY3YzNjZTU0
YzZkOS4uN2YwYzkyMTAxMWY1MjNjMzNkNjE5Zjg2YTNmOThkMTAzOWYxYmQ2YSAxMDA2NDQKLS0t
IGEvSlNUZXN0cy93YXNtL2pzLWFwaS90ZXN0X21lbW9yeV9jb25zdHJ1Y3Rvci5qcworKysgYi9K
U1Rlc3RzL3dhc20vanMtYXBpL3Rlc3RfbWVtb3J5X2NvbnN0cnVjdG9yLmpzCkBAIC04MSwzICs4
MSwyOSBAQCBmdW5jdGlvbiB0ZXN0SW52YWxpZFNpemUoZGVzY3JpcHRpb24sIHByb3BOYW1lKSB7
CiAgICAgfQogICAgIGFzc2VydCh0aHJldyk7CiB9CisKK3sKKyAgICBjb25zdCBhcmdzID0ge21p
bmltdW06IDV9OworICAgIGxldCBtaW5pbXVtID0gZmFsc2U7CisgICAgY29uc3QgcHJveHkgPSBu
ZXcgUHJveHkoYXJncywgeworICAgICAgICBnZXQodGFyZ2V0LCBwcm9wLCByZWNlaXZlcikgewor
ICAgICAgICAgICAgaWYgKHByb3AgPT09ICJtaW5pbXVtIikgeworICAgICAgICAgICAgICAgIG1p
bmltdW0gPSB0cnVlOworICAgICAgICAgICAgfQorICAgICAgICAgICAgcmV0dXJuIFJlZmxlY3Qu
Z2V0KC4uLmFyZ3VtZW50cyk7CisgICAgICAgIH0KKyAgICB9KQorICAgIGNvbnN0IG1lbSA9IG5l
dyBXZWJBc3NlbWJseS5NZW1vcnkocHJveHkpOworICAgIGFzc2VydChtZW0uYnVmZmVyLmJ5dGVM
ZW5ndGggPT09IDUgKiBwYWdlU2l6ZSk7CisgICAgYXNzZXJ0KG1pbmltdW0pOworCisgICAgbGV0
IHRocmV3ID0gZmFsc2U7CisgICAgdHJ5IHsKKyAgICAgICAgbmV3IFdlYkFzc2VtYmx5Lk1lbW9y
eSh7bWluaW11bTogNSwgaW5pdGlhbDogNX0pOworICAgIH0gY2F0Y2ggKGUpIHsKKyAgICAgICAg
YXNzZXJ0KGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpOworICAgICAgICBhc3NlcnQoZS5tZXNzYWdl
ID09PSAiV2ViQXNzZW1ibHkuTWVtb3J5ICdpbml0aWFsJyBhbmQgJ21pbmltdW0nIG9wdGlvbnMg
YXJlIHNwZWNpZmllZCBhdCB0aGUgc2FtZSB0aW1lIik7CisgICAgICAgIHRocmV3ID0gdHJ1ZTsK
KyAgICB9CisgICAgYXNzZXJ0KHRocmV3KTsKK30K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>416502</attachid>
            <date>2020-12-18 00:21:33 -0800</date>
            <delta_ts>2020-12-18 04:12:04 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-219600-20201218092132.patch</filename>
            <type>text/plain</type>
            <size>8413</size>
            <attacher>jtallon</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcwMTY1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBk
NGMwOWYyOGVjY2I2MGRkYWYwMzgxYTJkMGI1YWMwOWNhZjVjMDMxLi40OWMwODg2ZDkxZDJhMDYx
NmI2ZjYzOWZmZDlmMDcxNjgxM2U0MGNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxOSBAQAorMjAyMC0xMi0wNyAgSmVzc2ljYSBUYWxsb24gIDxqdGFsbG9uQGlnYWxpYS5j
b20+CisKKyAgICAgICAgW0pTQ10gQWRkIG1pbmltdW0gcGFyYW1ldGVyIHRvIHRoZSBXQVNNIEpT
LUFQSSBmb3IgTWVtb3J5ICYgVGFibGUuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMTk2MDAKKworICAgICAgICBUaGlzIHBhdGNoIGFkZHMgYSAibWlu
aW11bSIgcGVyYW1ldGVyIHRvIHRoZSBjb25zdHJ1Y3RvciBvZiBib3RoIFdlYkFzc2VtYmx5Lk1l
bW9yeSBhbmQKKyAgICAgICAgV2ViQXNzZW1ibHkuVGFibGUuIFRoaXMgcmVwcmVzZW50cyB0aGUg
c2FtZSB2YWx1ZSBhcyB0aGUgImluaXRpYWwiIHBlcmFtZXRlci4gVGhlIG5ldworICAgICAgICBw
ZXJhbWV0ZXIgbmFtZSBpcyBvdXRsaW5lZCBoZXJlIFsxXS4gSXQgaXMgcGFydCBvZiB0aGUgSlMg
dHlwZSByZWZsZWN0aW9uIHByb3Bvc2FsLgorCisgICAgICAgIFsxXTogaHR0cHM6Ly9naXRodWIu
Y29tL1dlYkFzc2VtYmx5L2pzLXR5cGVzL2Jsb2IvbWFzdGVyL3Byb3Bvc2Fscy9qcy10eXBlcy9P
dmVydmlldy5tZCNuYW1pbmctb2Ytc2l6ZS1saW1pdHMKKworICAgICAgICAqIEpTVGVzdHMvd2Fz
bS9qcy1hcGkvdGFibGUuanM6CisgICAgICAgICogSlNUZXN0cy93YXNtL2pzLWFwaS90ZXN0X21l
bW9yeV9jb25zdHJ1Y3Rvci5qczoKKyAgICAgICAgKiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseU1lbW9yeUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IuY3BwOgor
CiAyMDIwLTExLTE5ICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CiAKICAgICAg
ICAgW0pTQ10gRW5hYmxlIHByaXZhdGUgaW5zdGFuY2UgYW5kIHN0YXRpYyBmaWVsZHMKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TWVtb3J5Q29u
c3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlN
ZW1vcnlDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMjU2ZWIwZmZjMzRhYjczNWJjNTMyODdjNzVmNmIw
N2VjNmI4ZjdjZS4uY2E0YjZhODQ3NTc0NDY1YTg2NmE4NDg0MThiNjMxM2M0YjhmMWVjMCAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNZW1vcnlD
b25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNz
ZW1ibHlNZW1vcnlDb25zdHJ1Y3Rvci5jcHAKQEAgLTY4LDggKzY4LDE4IEBAIEpTQ19ERUZJTkVf
SE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5TWVtb3J5LCAoSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iCiAgICAgV2FzbTo6UGFnZUNvdW50IGluaXRpYWxQYWdlQ291bnQ7CiAgICAg
ewogICAgICAgICBJZGVudGlmaWVyIGluaXRpYWwgPSBJZGVudGlmaWVyOjpmcm9tU3RyaW5nKHZt
LCAiaW5pdGlhbCIpOwotICAgICAgICBKU1ZhbHVlIG1pblNpemVWYWx1ZSA9IG1lbW9yeURlc2Ny
aXB0b3ItPmdldChnbG9iYWxPYmplY3QsIGluaXRpYWwpOworICAgICAgICBKU1ZhbHVlIGluaXRT
aXplVmFsdWUgPSBtZW1vcnlEZXNjcmlwdG9yLT5nZXQoZ2xvYmFsT2JqZWN0LCBpbml0aWFsKTsK
ICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0aHJvd1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgp
KTsKKyAgICAgICAgSWRlbnRpZmllciBtaW5pbXVtID0gSWRlbnRpZmllcjo6ZnJvbVN0cmluZyh2
bSwgIm1pbmltdW0iKTsKKyAgICAgICAgSlNWYWx1ZSBtaW5TaXplVmFsdWUgPSBtZW1vcnlEZXNj
cmlwdG9yLT5nZXQoZ2xvYmFsT2JqZWN0LCBtaW5pbXVtKTsKKyAgICAgICAgUkVUVVJOX0lGX0VY
Q0VQVElPTih0aHJvd1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKKyAgICAgICAgaWYgKCFtaW5T
aXplVmFsdWUuaXNVbmRlZmluZWQoKSAmJiAhaW5pdFNpemVWYWx1ZS5pc1VuZGVmaW5lZCgpKSB7
CisgICAgICAgICAgICAvLyBFcnJvciBiZWNhdXNlIGJvdGggc3BlY2lmaWVkLgorICAgICAgICAg
ICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCAiV2Vi
QXNzZW1ibHkuTWVtb3J5ICdpbml0aWFsJyBhbmQgJ21pbmltdW0nIG9wdGlvbnMgYXJlIHNwZWNp
ZmllZCBhdCB0aGUgc2FtZSB0aW1lIik7CisgICAgICAgIH0KKyAgICAgICAgaWYgKCFpbml0U2l6
ZVZhbHVlLmlzVW5kZWZpbmVkKCkpCisgICAgICAgICAgICBtaW5TaXplVmFsdWUgPSBpbml0U2l6
ZVZhbHVlOworCiAgICAgICAgIHVpbnQzMl90IHNpemUgPSB0b05vbldyYXBwaW5nVWludDMyKGds
b2JhbE9iamVjdCwgbWluU2l6ZVZhbHVlKTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0
aHJvd1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICAgICAgaWYgKCFXYXNtOjpQYWdlQ291
bnQ6OmlzVmFsaWQoc2l6ZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vanMvV2ViQXNzZW1ibHlUYWJsZUNvbnN0cnVjdG9yLmNwcAppbmRleCA5MjVlMDZl
NGFmYjE3YmIxMjIxMjVjYzdiOWJkYjhhYmFiNTcwNWI5Li44MjZlNThlYjVjMzgyNzFhOTlhNWFh
MDE3NWNlYTA5MmY1OGExZGQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVDb25zdHJ1Y3Rvci5jcHAKQEAgLTgxLDYg
KzgxLDE1IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5
VGFibGUsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqCiAgICAgSWRlbnRpZmllciBpbml0aWFs
SWRlbnQgPSBJZGVudGlmaWVyOjpmcm9tU3RyaW5nKHZtLCAiaW5pdGlhbCIpOwogICAgIEpTVmFs
dWUgaW5pdGlhbFNpemVWYWx1ZSA9IG1lbW9yeURlc2NyaXB0b3ItPmdldChnbG9iYWxPYmplY3Qs
IGluaXRpYWxJZGVudCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0aHJvd1Njb3BlLCBlbmNv
ZGVkSlNWYWx1ZSgpKTsKKyAgICBJZGVudGlmaWVyIG1pbmltdW1JZGVudCA9IElkZW50aWZpZXI6
OmZyb21TdHJpbmcodm0sICJtaW5pbXVtIik7CisgICAgSlNWYWx1ZSBtaW5TaXplVmFsdWUgPSBt
ZW1vcnlEZXNjcmlwdG9yLT5nZXQoZ2xvYmFsT2JqZWN0LCBtaW5pbXVtSWRlbnQpOworICAgIFJF
VFVSTl9JRl9FWENFUFRJT04odGhyb3dTY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CisgICAgaWYg
KCFpbml0aWFsU2l6ZVZhbHVlLmlzVW5kZWZpbmVkKCkgJiYgIW1pblNpemVWYWx1ZS5pc1VuZGVm
aW5lZCgpKQorICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHRo
cm93U2NvcGUsICJXZWJBc3NlbWJseS5UYWJsZSAnaW5pdGlhbCcgYW5kICdtaW5pbXVtJyBvcHRp
b25zIGFyZSBzcGVjaWZpZWQgYXQgdGhlIHNhbWUgdGltZSIpOworCisgICAgaWYgKCFtaW5TaXpl
VmFsdWUuaXNVbmRlZmluZWQoKSkKKyAgICAgICAgaW5pdGlhbFNpemVWYWx1ZSA9IG1pblNpemVW
YWx1ZTsKKwogICAgIHVpbnQzMl90IGluaXRpYWwgPSB0b05vbldyYXBwaW5nVWludDMyKGdsb2Jh
bE9iamVjdCwgaW5pdGlhbFNpemVWYWx1ZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0aHJv
d1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL21lbW9yeS9jb25zdHJ1Y3Rv
ci10eXBlcy50ZW50YXRpdmUuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2FzbS9qc2FwaS9tZW1vcnkvY29uc3RydWN0b3ItdHlw
ZXMudGVudGF0aXZlLmFueS1leHBlY3RlZC50eHQKaW5kZXggNTM3ZDE4YjdmMjk4N2VlMGMwNDBk
Y2I0NzFmNTJkMjg4NTg2OTliZi4uMmEwYjRkNWZhODkyNjFhM2Y5NTViODY0OWU4NzMxYzljYmEz
ZTZhYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93YXNtL2pzYXBpL21lbW9yeS9jb25zdHJ1Y3Rvci10eXBlcy50ZW50YXRpdmUuYW55LWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3dhc20vanNhcGkvbWVtb3J5L2NvbnN0cnVjdG9yLXR5cGVzLnRlbnRhdGl2ZS5hbnktZXhw
ZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCi1GQUlMIEluaXRpYWxpemluZyB3aXRoIGJvdGgg
aW5pdGlhbCBhbmQgbWluaW11bSBhc3NlcnRfdGhyb3dzX2pzOiBmdW5jdGlvbiAiKCkgPT4gbmV3
IFdlYkFzc2VtYmx5Lk1lbW9yeShhcmd1bWVudCkiIGRpZCBub3QgdGhyb3cKLUZBSUwgWmVybyBt
aW5pbXVtIEV4cGVjdCBhbiBpbnRlZ2VyIGFyZ3VtZW50IGluIHRoZSByYW5nZTogWzAsIDJeMzIg
LSAxXQotRkFJTCBOb24temVybyBtaW5pbXVtIEV4cGVjdCBhbiBpbnRlZ2VyIGFyZ3VtZW50IGlu
IHRoZSByYW5nZTogWzAsIDJeMzIgLSAxXQorUEFTUyBJbml0aWFsaXppbmcgd2l0aCBib3RoIGlu
aXRpYWwgYW5kIG1pbmltdW0KK1BBU1MgWmVybyBtaW5pbXVtCitQQVNTIE5vbi16ZXJvIG1pbmlt
dW0KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93YXNtL2pzYXBpL3RhYmxlL2NvbnN0cnVjdG9yLXR5cGVzLnRlbnRhdGl2ZS5hbnktZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
YXNtL2pzYXBpL3RhYmxlL2NvbnN0cnVjdG9yLXR5cGVzLnRlbnRhdGl2ZS5hbnktZXhwZWN0ZWQu
dHh0CmluZGV4IGU1Njc5ZWUyYTg5MjMxNGE5ZGFlY2RlZGEyNGEzMjM1YjQxN2QzYTguLjJhMGI0
ZDVmYTg5MjYxYTNmOTU1Yjg2NDllODczMWM5Y2JhM2U2YWMgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2FzbS9qc2FwaS90YWJsZS9jb25z
dHJ1Y3Rvci10eXBlcy50ZW50YXRpdmUuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dhc20vanNhcGkvdGFibGUvY29uc3Ry
dWN0b3ItdHlwZXMudGVudGF0aXZlLmFueS1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAK
LUZBSUwgSW5pdGlhbGl6aW5nIHdpdGggYm90aCBpbml0aWFsIGFuZCBtaW5pbXVtIGFzc2VydF90
aHJvd3NfanM6IGZ1bmN0aW9uICIoKSA9PiBuZXcgV2ViQXNzZW1ibHkuVGFibGUoYXJndW1lbnQp
IiBkaWQgbm90IHRocm93Ci1GQUlMIFplcm8gbWluaW11bSBFeHBlY3QgYW4gaW50ZWdlciBhcmd1
bWVudCBpbiB0aGUgcmFuZ2U6IFswLCAyXjMyIC0gMV0KLUZBSUwgTm9uLXplcm8gbWluaW11bSBF
eHBlY3QgYW4gaW50ZWdlciBhcmd1bWVudCBpbiB0aGUgcmFuZ2U6IFswLCAyXjMyIC0gMV0KK1BB
U1MgSW5pdGlhbGl6aW5nIHdpdGggYm90aCBpbml0aWFsIGFuZCBtaW5pbXVtCitQQVNTIFplcm8g
bWluaW11bQorUEFTUyBOb24temVybyBtaW5pbXVtCiAKZGlmZiAtLWdpdCBhL0pTVGVzdHMvd2Fz
bS9qcy1hcGkvdGFibGUuanMgYi9KU1Rlc3RzL3dhc20vanMtYXBpL3RhYmxlLmpzCmluZGV4IGQ0
MDlhNDgxMDhkMmExZTNiNTZkMGEzMmUzZjBlOWQxNDA5ODYwZTMuLmRiNzg3OGYwY2EyM2RjOWUx
ZjE5NjJhOGY1NjU2NzA2OTg4ZTAyZGYgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvd2FzbS9qcy1hcGkv
dGFibGUuanMKKysrIGIvSlNUZXN0cy93YXNtL2pzLWFwaS90YWJsZS5qcwpAQCAtMzY0LDMgKzM2
NCwyOSBAQCBhc3NlcnQudGhyb3dzKCgpID0+IFdlYkFzc2VtYmx5LlRhYmxlLnByb3RvdHlwZS5n
cm93KHVuZGVmaW5lZCksIFR5cGVFcnJvciwgYGV4cAogICAgIGFzc2VydC5lcShpbnN0YW5jZS5l
eHBvcnRzLnRhYmxlMC5sZW5ndGgsIDApOwogICAgIGFzc2VydC50cnV0aHkoaW5zdGFuY2UuZXhw
b3J0cy50YWJsZSBpbnN0YW5jZW9mIFdlYkFzc2VtYmx5LlRhYmxlKTsKIH0KKworeworICAgIGNv
bnN0IGFyZ3MgPSB7bWluaW11bTogNSwgZWxlbWVudDogImZ1bmNyZWYifQorICAgIGxldCBtaW5p
bXVtID0gZmFsc2UKKyAgICBjb25zdCBwcm94eSA9IG5ldyBQcm94eShhcmdzLCB7CisgICAgICAg
IGdldCh0YXJnZXQsIHByb3AsIHJlY2VpdmVyKSB7CisgICAgICAgICAgICBpZiAocHJvcCA9PT0g
Im1pbmltdW0iKSB7CisgICAgICAgICAgICAgICAgbWluaW11bSA9IHRydWU7CisgICAgICAgICAg
ICB9CisgICAgICAgICAgICByZXR1cm4gUmVmbGVjdC5nZXQoLi4uYXJndW1lbnRzKTsKKyAgICAg
ICAgfQorICAgIH0pCisgICAgY29uc3QgdGFibGUgPSBuZXcgV2ViQXNzZW1ibHkuVGFibGUocHJv
eHkpOworICAgIGFzc2VydC5lcSh0YWJsZS5sZW5ndGgsIDUpOworICAgIGFzc2VydC50cnV0aHko
bWluaW11bSk7CisKKyAgICBsZXQgdGhyZXcgPSBmYWxzZTsKKyAgICB0cnkgeworICAgICAgICBu
ZXcgV2ViQXNzZW1ibHkuVGFibGUoe21pbmltdW06IDUsIGluaXRpYWw6IDUsIGVsZW1lbnQ6ICJm
dW5jcmVmIn0pOworICAgIH0gY2F0Y2ggKGUpIHsKKyAgICAgICAgYXNzZXJ0LnRydXRoeShlIGlu
c3RhbmNlb2YgVHlwZUVycm9yKTsKKyAgICAgICAgYXNzZXJ0LmVxKGUubWVzc2FnZSwgIldlYkFz
c2VtYmx5LlRhYmxlICdpbml0aWFsJyBhbmQgJ21pbmltdW0nIG9wdGlvbnMgYXJlIHNwZWNpZmll
ZCBhdCB0aGUgc2FtZSB0aW1lIikKKyAgICAgICAgdGhyZXcgPSB0cnVlOworICAgIH0KKyAgICBh
c3NlcnQudHJ1dGh5KHRocmV3KTsKK30KZGlmZiAtLWdpdCBhL0pTVGVzdHMvd2FzbS9qcy1hcGkv
dGVzdF9tZW1vcnlfY29uc3RydWN0b3IuanMgYi9KU1Rlc3RzL3dhc20vanMtYXBpL3Rlc3RfbWVt
b3J5X2NvbnN0cnVjdG9yLmpzCmluZGV4IGI4ODkzZWFiN2FmMmZhYzBlYTM0OGM1ZWU1MjU2N2Mz
Y2U1NGM2ZDkuLjdmMGM5MjEwMTFmNTIzYzMzZDYxOWY4NmEzZjk4ZDEwMzlmMWJkNmEgMTAwNjQ0
Ci0tLSBhL0pTVGVzdHMvd2FzbS9qcy1hcGkvdGVzdF9tZW1vcnlfY29uc3RydWN0b3IuanMKKysr
IGIvSlNUZXN0cy93YXNtL2pzLWFwaS90ZXN0X21lbW9yeV9jb25zdHJ1Y3Rvci5qcwpAQCAtODEs
MyArODEsMjkgQEAgZnVuY3Rpb24gdGVzdEludmFsaWRTaXplKGRlc2NyaXB0aW9uLCBwcm9wTmFt
ZSkgewogICAgIH0KICAgICBhc3NlcnQodGhyZXcpOwogfQorCit7CisgICAgY29uc3QgYXJncyA9
IHttaW5pbXVtOiA1fTsKKyAgICBsZXQgbWluaW11bSA9IGZhbHNlOworICAgIGNvbnN0IHByb3h5
ID0gbmV3IFByb3h5KGFyZ3MsIHsKKyAgICAgICAgZ2V0KHRhcmdldCwgcHJvcCwgcmVjZWl2ZXIp
IHsKKyAgICAgICAgICAgIGlmIChwcm9wID09PSAibWluaW11bSIpIHsKKyAgICAgICAgICAgICAg
ICBtaW5pbXVtID0gdHJ1ZTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHJldHVybiBSZWZs
ZWN0LmdldCguLi5hcmd1bWVudHMpOworICAgICAgICB9CisgICAgfSkKKyAgICBjb25zdCBtZW0g
PSBuZXcgV2ViQXNzZW1ibHkuTWVtb3J5KHByb3h5KTsKKyAgICBhc3NlcnQobWVtLmJ1ZmZlci5i
eXRlTGVuZ3RoID09PSA1ICogcGFnZVNpemUpOworICAgIGFzc2VydChtaW5pbXVtKTsKKworICAg
IGxldCB0aHJldyA9IGZhbHNlOworICAgIHRyeSB7CisgICAgICAgIG5ldyBXZWJBc3NlbWJseS5N
ZW1vcnkoe21pbmltdW06IDUsIGluaXRpYWw6IDV9KTsKKyAgICB9IGNhdGNoIChlKSB7CisgICAg
ICAgIGFzc2VydChlIGluc3RhbmNlb2YgVHlwZUVycm9yKTsKKyAgICAgICAgYXNzZXJ0KGUubWVz
c2FnZSA9PT0gIldlYkFzc2VtYmx5Lk1lbW9yeSAnaW5pdGlhbCcgYW5kICdtaW5pbXVtJyBvcHRp
b25zIGFyZSBzcGVjaWZpZWQgYXQgdGhlIHNhbWUgdGltZSIpOworICAgICAgICB0aHJldyA9IHRy
dWU7CisgICAgfQorICAgIGFzc2VydCh0aHJldyk7Cit9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>416508</attachid>
            <date>2020-12-18 04:12:10 -0800</date>
            <delta_ts>2020-12-18 06:06:50 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-219600-20201218131208.patch</filename>
            <type>text/plain</type>
            <size>11533</size>
            <attacher>jtallon</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcwMTY1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBk
NGMwOWYyOGVjY2I2MGRkYWYwMzgxYTJkMGI1YWMwOWNhZjVjMDMxLi40OWMwODg2ZDkxZDJhMDYx
NmI2ZjYzOWZmZDlmMDcxNjgxM2U0MGNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxOSBAQAorMjAyMC0xMi0wNyAgSmVzc2ljYSBUYWxsb24gIDxqdGFsbG9uQGlnYWxpYS5j
b20+CisKKyAgICAgICAgW0pTQ10gQWRkIG1pbmltdW0gcGFyYW1ldGVyIHRvIHRoZSBXQVNNIEpT
LUFQSSBmb3IgTWVtb3J5ICYgVGFibGUuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMTk2MDAKKworICAgICAgICBUaGlzIHBhdGNoIGFkZHMgYSAibWlu
aW11bSIgcGVyYW1ldGVyIHRvIHRoZSBjb25zdHJ1Y3RvciBvZiBib3RoIFdlYkFzc2VtYmx5Lk1l
bW9yeSBhbmQKKyAgICAgICAgV2ViQXNzZW1ibHkuVGFibGUuIFRoaXMgcmVwcmVzZW50cyB0aGUg
c2FtZSB2YWx1ZSBhcyB0aGUgImluaXRpYWwiIHBlcmFtZXRlci4gVGhlIG5ldworICAgICAgICBw
ZXJhbWV0ZXIgbmFtZSBpcyBvdXRsaW5lZCBoZXJlIFsxXS4gSXQgaXMgcGFydCBvZiB0aGUgSlMg
dHlwZSByZWZsZWN0aW9uIHByb3Bvc2FsLgorCisgICAgICAgIFsxXTogaHR0cHM6Ly9naXRodWIu
Y29tL1dlYkFzc2VtYmx5L2pzLXR5cGVzL2Jsb2IvbWFzdGVyL3Byb3Bvc2Fscy9qcy10eXBlcy9P
dmVydmlldy5tZCNuYW1pbmctb2Ytc2l6ZS1saW1pdHMKKworICAgICAgICAqIEpTVGVzdHMvd2Fz
bS9qcy1hcGkvdGFibGUuanM6CisgICAgICAgICogSlNUZXN0cy93YXNtL2pzLWFwaS90ZXN0X21l
bW9yeV9jb25zdHJ1Y3Rvci5qczoKKyAgICAgICAgKiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseU1lbW9yeUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IuY3BwOgor
CiAyMDIwLTExLTE5ICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CiAKICAgICAg
ICAgW0pTQ10gRW5hYmxlIHByaXZhdGUgaW5zdGFuY2UgYW5kIHN0YXRpYyBmaWVsZHMKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TWVtb3J5Q29u
c3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlN
ZW1vcnlDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMjU2ZWIwZmZjMzRhYjczNWJjNTMyODdjNzVmNmIw
N2VjNmI4ZjdjZS4uY2E0YjZhODQ3NTc0NDY1YTg2NmE4NDg0MThiNjMxM2M0YjhmMWVjMCAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNZW1vcnlD
b25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNz
ZW1ibHlNZW1vcnlDb25zdHJ1Y3Rvci5jcHAKQEAgLTY4LDggKzY4LDE4IEBAIEpTQ19ERUZJTkVf
SE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5TWVtb3J5LCAoSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iCiAgICAgV2FzbTo6UGFnZUNvdW50IGluaXRpYWxQYWdlQ291bnQ7CiAgICAg
ewogICAgICAgICBJZGVudGlmaWVyIGluaXRpYWwgPSBJZGVudGlmaWVyOjpmcm9tU3RyaW5nKHZt
LCAiaW5pdGlhbCIpOwotICAgICAgICBKU1ZhbHVlIG1pblNpemVWYWx1ZSA9IG1lbW9yeURlc2Ny
aXB0b3ItPmdldChnbG9iYWxPYmplY3QsIGluaXRpYWwpOworICAgICAgICBKU1ZhbHVlIGluaXRT
aXplVmFsdWUgPSBtZW1vcnlEZXNjcmlwdG9yLT5nZXQoZ2xvYmFsT2JqZWN0LCBpbml0aWFsKTsK
ICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0aHJvd1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgp
KTsKKyAgICAgICAgSWRlbnRpZmllciBtaW5pbXVtID0gSWRlbnRpZmllcjo6ZnJvbVN0cmluZyh2
bSwgIm1pbmltdW0iKTsKKyAgICAgICAgSlNWYWx1ZSBtaW5TaXplVmFsdWUgPSBtZW1vcnlEZXNj
cmlwdG9yLT5nZXQoZ2xvYmFsT2JqZWN0LCBtaW5pbXVtKTsKKyAgICAgICAgUkVUVVJOX0lGX0VY
Q0VQVElPTih0aHJvd1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKKyAgICAgICAgaWYgKCFtaW5T
aXplVmFsdWUuaXNVbmRlZmluZWQoKSAmJiAhaW5pdFNpemVWYWx1ZS5pc1VuZGVmaW5lZCgpKSB7
CisgICAgICAgICAgICAvLyBFcnJvciBiZWNhdXNlIGJvdGggc3BlY2lmaWVkLgorICAgICAgICAg
ICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCAiV2Vi
QXNzZW1ibHkuTWVtb3J5ICdpbml0aWFsJyBhbmQgJ21pbmltdW0nIG9wdGlvbnMgYXJlIHNwZWNp
ZmllZCBhdCB0aGUgc2FtZSB0aW1lIik7CisgICAgICAgIH0KKyAgICAgICAgaWYgKCFpbml0U2l6
ZVZhbHVlLmlzVW5kZWZpbmVkKCkpCisgICAgICAgICAgICBtaW5TaXplVmFsdWUgPSBpbml0U2l6
ZVZhbHVlOworCiAgICAgICAgIHVpbnQzMl90IHNpemUgPSB0b05vbldyYXBwaW5nVWludDMyKGds
b2JhbE9iamVjdCwgbWluU2l6ZVZhbHVlKTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0
aHJvd1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICAgICAgaWYgKCFXYXNtOjpQYWdlQ291
bnQ6OmlzVmFsaWQoc2l6ZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vanMvV2ViQXNzZW1ibHlUYWJsZUNvbnN0cnVjdG9yLmNwcAppbmRleCA5MjVlMDZl
NGFmYjE3YmIxMjIxMjVjYzdiOWJkYjhhYmFiNTcwNWI5Li44MjZlNThlYjVjMzgyNzFhOTlhNWFh
MDE3NWNlYTA5MmY1OGExZGQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVDb25zdHJ1Y3Rvci5jcHAKQEAgLTgxLDYg
KzgxLDE1IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5
VGFibGUsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqCiAgICAgSWRlbnRpZmllciBpbml0aWFs
SWRlbnQgPSBJZGVudGlmaWVyOjpmcm9tU3RyaW5nKHZtLCAiaW5pdGlhbCIpOwogICAgIEpTVmFs
dWUgaW5pdGlhbFNpemVWYWx1ZSA9IG1lbW9yeURlc2NyaXB0b3ItPmdldChnbG9iYWxPYmplY3Qs
IGluaXRpYWxJZGVudCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0aHJvd1Njb3BlLCBlbmNv
ZGVkSlNWYWx1ZSgpKTsKKyAgICBJZGVudGlmaWVyIG1pbmltdW1JZGVudCA9IElkZW50aWZpZXI6
OmZyb21TdHJpbmcodm0sICJtaW5pbXVtIik7CisgICAgSlNWYWx1ZSBtaW5TaXplVmFsdWUgPSBt
ZW1vcnlEZXNjcmlwdG9yLT5nZXQoZ2xvYmFsT2JqZWN0LCBtaW5pbXVtSWRlbnQpOworICAgIFJF
VFVSTl9JRl9FWENFUFRJT04odGhyb3dTY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CisgICAgaWYg
KCFpbml0aWFsU2l6ZVZhbHVlLmlzVW5kZWZpbmVkKCkgJiYgIW1pblNpemVWYWx1ZS5pc1VuZGVm
aW5lZCgpKQorICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHRo
cm93U2NvcGUsICJXZWJBc3NlbWJseS5UYWJsZSAnaW5pdGlhbCcgYW5kICdtaW5pbXVtJyBvcHRp
b25zIGFyZSBzcGVjaWZpZWQgYXQgdGhlIHNhbWUgdGltZSIpOworCisgICAgaWYgKCFtaW5TaXpl
VmFsdWUuaXNVbmRlZmluZWQoKSkKKyAgICAgICAgaW5pdGlhbFNpemVWYWx1ZSA9IG1pblNpemVW
YWx1ZTsKKwogICAgIHVpbnQzMl90IGluaXRpYWwgPSB0b05vbldyYXBwaW5nVWludDMyKGdsb2Jh
bE9iamVjdCwgaW5pdGlhbFNpemVWYWx1ZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0aHJv
d1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDE5MTZiMjMxMTAxZTZlNGNkZjE5
NTAxOGQzNzNhZGY3YzhiNDY4NzQuLmUxZjM1ODRmMmY1OTBiNmZhN2VjOTdkNDgxY2Y0YjY2Y2Q4
YTRlMjAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAyMC0xMi0wNyAgSmVzc2ljYSBUYWxsb24g
IDxqdGFsbG9uQGlnYWxpYS5jb20+CisKKyAgICAgICAgW0pTQ10gRml4IGV4cGVjdGF0aW9uIGZv
ciBXQVNNIEpTLXR5cGUgcmVmbGVjdGlvbiBXUFRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTk2MDAKKworICAgICAgICBDaGFuZ2VkIHRoZSBleHBl
Y3RhdGlvbnMgZm9yIHRoZSBXQVNNIEpTLVR5cGUgcmVmbGVjdGlvbnMgY29uc3RydWN0b3IKKyAg
ICAgICAgdGVzdHMgYXMgd2Ugbm93IHN1cHBvcnQgdGhlIG1pbmltdW0gcGFyYW1ldGVyLgorCisg
ICAgICAgICogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNt
L2pzYXBpL21lbW9yeS9jb25zdHJ1Y3Rvci10eXBlcy50ZW50YXRpdmUuYW55LWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dhc20vanNhcGkvdGFibGUvY29uc3RydWN0b3ItdHlwZXMudGVudGF0aXZlLmFueS1leHBlY3Rl
ZC50eHQ6CisgICAgICAgICogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93YXNtL2pzYXBpL21lbW9yeS9jb25zdHJ1Y3Rvci10eXBlcy50ZW50YXRpdmUuYW55Lndv
cmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL3RhYmxlL2NvbnN0cnVjdG9yLXR5cGVzLnRlbnRh
dGl2ZS5hbnkud29ya2VyLWV4cGVjdGVkLnR4dDoKKwogMjAyMC0xMS0yMiAgRGllZ28gUGlubyBH
YXJjaWEgIDxkcGlub0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHTElCXVtHVEtdIFVucmV2aWV3
ZWQgdGVzdCBnYXJkZW5pbmcuIFVwZGF0ZWQgZXhwZWN0YXRpb25zIGFuZCBiYXNlbGluZXMgYWZ0
ZXIgMjcwMTY0LgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93YXNtL2pzYXBpL21lbW9yeS9jb25zdHJ1Y3Rvci10eXBlcy50ZW50YXRpdmUu
YW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2FzbS9qc2FwaS9tZW1vcnkvY29uc3RydWN0b3ItdHlwZXMudGVudGF0aXZlLmFueS1l
eHBlY3RlZC50eHQKaW5kZXggNTM3ZDE4YjdmMjk4N2VlMGMwNDBkY2I0NzFmNTJkMjg4NTg2OTli
Zi4uMmEwYjRkNWZhODkyNjFhM2Y5NTViODY0OWU4NzMxYzljYmEzZTZhYyAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL21l
bW9yeS9jb25zdHJ1Y3Rvci10eXBlcy50ZW50YXRpdmUuYW55LWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dhc20vanNhcGkvbWVt
b3J5L2NvbnN0cnVjdG9yLXR5cGVzLnRlbnRhdGl2ZS5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDUg
KzEsNSBAQAogCi1GQUlMIEluaXRpYWxpemluZyB3aXRoIGJvdGggaW5pdGlhbCBhbmQgbWluaW11
bSBhc3NlcnRfdGhyb3dzX2pzOiBmdW5jdGlvbiAiKCkgPT4gbmV3IFdlYkFzc2VtYmx5Lk1lbW9y
eShhcmd1bWVudCkiIGRpZCBub3QgdGhyb3cKLUZBSUwgWmVybyBtaW5pbXVtIEV4cGVjdCBhbiBp
bnRlZ2VyIGFyZ3VtZW50IGluIHRoZSByYW5nZTogWzAsIDJeMzIgLSAxXQotRkFJTCBOb24temVy
byBtaW5pbXVtIEV4cGVjdCBhbiBpbnRlZ2VyIGFyZ3VtZW50IGluIHRoZSByYW5nZTogWzAsIDJe
MzIgLSAxXQorUEFTUyBJbml0aWFsaXppbmcgd2l0aCBib3RoIGluaXRpYWwgYW5kIG1pbmltdW0K
K1BBU1MgWmVybyBtaW5pbXVtCitQQVNTIE5vbi16ZXJvIG1pbmltdW0KIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL21l
bW9yeS9jb25zdHJ1Y3Rvci10eXBlcy50ZW50YXRpdmUuYW55Lndvcmtlci1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dhc20vanNhcGkv
bWVtb3J5L2NvbnN0cnVjdG9yLXR5cGVzLnRlbnRhdGl2ZS5hbnkud29ya2VyLWV4cGVjdGVkLnR4
dAppbmRleCA1MzdkMThiN2YyOTg3ZWUwYzA0MGRjYjQ3MWY1MmQyODg1ODY5OWJmLi41ZTQ0OGUy
NTkyZWNjMTRjMzUwNDc5MmNjMmMwMzBmMWFjNGE1OTM2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dhc20vanNhcGkvbWVtb3J5L2NvbnN0
cnVjdG9yLXR5cGVzLnRlbnRhdGl2ZS5hbnkud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dhc20vanNhcGkvbWVtb3J5
L2NvbnN0cnVjdG9yLXR5cGVzLnRlbnRhdGl2ZS5hbnkud29ya2VyLWV4cGVjdGVkLnR4dApAQCAt
MSw1ICsxLDQgQEAKIAotRkFJTCBJbml0aWFsaXppbmcgd2l0aCBib3RoIGluaXRpYWwgYW5kIG1p
bmltdW0gYXNzZXJ0X3Rocm93c19qczogZnVuY3Rpb24gIigpID0+IG5ldyBXZWJBc3NlbWJseS5N
ZW1vcnkoYXJndW1lbnQpIiBkaWQgbm90IHRocm93Ci1GQUlMIFplcm8gbWluaW11bSBFeHBlY3Qg
YW4gaW50ZWdlciBhcmd1bWVudCBpbiB0aGUgcmFuZ2U6IFswLCAyXjMyIC0gMV0KLUZBSUwgTm9u
LXplcm8gbWluaW11bSBFeHBlY3QgYW4gaW50ZWdlciBhcmd1bWVudCBpbiB0aGUgcmFuZ2U6IFsw
LCAyXjMyIC0gMV0KLQorUEFTUyBJbml0aWFsaXppbmcgd2l0aCBib3RoIGluaXRpYWwgYW5kIG1p
bmltdW0KK1BBU1MgWmVybyBtaW5pbXVtCitQQVNTIE5vbi16ZXJvIG1pbmltdW0KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2FzbS9qc2Fw
aS90YWJsZS9jb25zdHJ1Y3Rvci10eXBlcy50ZW50YXRpdmUuYW55LWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2FzbS9qc2FwaS90YWJs
ZS9jb25zdHJ1Y3Rvci10eXBlcy50ZW50YXRpdmUuYW55LWV4cGVjdGVkLnR4dAppbmRleCBlNTY3
OWVlMmE4OTIzMTRhOWRhZWNkZWRhMjRhMzIzNWI0MTdkM2E4Li4yYTBiNGQ1ZmE4OTI2MWEzZjk1
NWI4NjQ5ZTg3MzFjOWNiYTNlNmFjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dhc20vanNhcGkvdGFibGUvY29uc3RydWN0b3ItdHlwZXMu
dGVudGF0aXZlLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL3RhYmxlL2NvbnN0cnVjdG9yLXR5cGVzLnRl
bnRhdGl2ZS5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCi1GQUlMIEluaXRpYWxp
emluZyB3aXRoIGJvdGggaW5pdGlhbCBhbmQgbWluaW11bSBhc3NlcnRfdGhyb3dzX2pzOiBmdW5j
dGlvbiAiKCkgPT4gbmV3IFdlYkFzc2VtYmx5LlRhYmxlKGFyZ3VtZW50KSIgZGlkIG5vdCB0aHJv
dwotRkFJTCBaZXJvIG1pbmltdW0gRXhwZWN0IGFuIGludGVnZXIgYXJndW1lbnQgaW4gdGhlIHJh
bmdlOiBbMCwgMl4zMiAtIDFdCi1GQUlMIE5vbi16ZXJvIG1pbmltdW0gRXhwZWN0IGFuIGludGVn
ZXIgYXJndW1lbnQgaW4gdGhlIHJhbmdlOiBbMCwgMl4zMiAtIDFdCitQQVNTIEluaXRpYWxpemlu
ZyB3aXRoIGJvdGggaW5pdGlhbCBhbmQgbWluaW11bQorUEFTUyBaZXJvIG1pbmltdW0KK1BBU1Mg
Tm9uLXplcm8gbWluaW11bQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dhc20vanNhcGkvdGFibGUvY29uc3RydWN0b3ItdHlwZXMudGVu
dGF0aXZlLmFueS53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL3RhYmxlL2NvbnN0cnVjdG9yLXR5cGVzLnRl
bnRhdGl2ZS5hbnkud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCBlNTY3OWVlMmE4OTIzMTRhOWRh
ZWNkZWRhMjRhMzIzNWI0MTdkM2E4Li41ZTQ0OGUyNTkyZWNjMTRjMzUwNDc5MmNjMmMwMzBmMWFj
NGE1OTM2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dhc20vanNhcGkvdGFibGUvY29uc3RydWN0b3ItdHlwZXMudGVudGF0aXZlLmFueS53
b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2FzbS9qc2FwaS90YWJsZS9jb25zdHJ1Y3Rvci10eXBlcy50ZW50YXRpdmUu
YW55Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw0IEBACiAKLUZBSUwgSW5pdGlhbGl6
aW5nIHdpdGggYm90aCBpbml0aWFsIGFuZCBtaW5pbXVtIGFzc2VydF90aHJvd3NfanM6IGZ1bmN0
aW9uICIoKSA9PiBuZXcgV2ViQXNzZW1ibHkuVGFibGUoYXJndW1lbnQpIiBkaWQgbm90IHRocm93
Ci1GQUlMIFplcm8gbWluaW11bSBFeHBlY3QgYW4gaW50ZWdlciBhcmd1bWVudCBpbiB0aGUgcmFu
Z2U6IFswLCAyXjMyIC0gMV0KLUZBSUwgTm9uLXplcm8gbWluaW11bSBFeHBlY3QgYW4gaW50ZWdl
ciBhcmd1bWVudCBpbiB0aGUgcmFuZ2U6IFswLCAyXjMyIC0gMV0KLQorUEFTUyBJbml0aWFsaXpp
bmcgd2l0aCBib3RoIGluaXRpYWwgYW5kIG1pbmltdW0KK1BBU1MgWmVybyBtaW5pbXVtCitQQVNT
IE5vbi16ZXJvIG1pbmltdW0KZGlmZiAtLWdpdCBhL0pTVGVzdHMvd2FzbS9qcy1hcGkvdGFibGUu
anMgYi9KU1Rlc3RzL3dhc20vanMtYXBpL3RhYmxlLmpzCmluZGV4IGQ0MDlhNDgxMDhkMmExZTNi
NTZkMGEzMmUzZjBlOWQxNDA5ODYwZTMuLmRiNzg3OGYwY2EyM2RjOWUxZjE5NjJhOGY1NjU2NzA2
OTg4ZTAyZGYgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvd2FzbS9qcy1hcGkvdGFibGUuanMKKysrIGIv
SlNUZXN0cy93YXNtL2pzLWFwaS90YWJsZS5qcwpAQCAtMzY0LDMgKzM2NCwyOSBAQCBhc3NlcnQu
dGhyb3dzKCgpID0+IFdlYkFzc2VtYmx5LlRhYmxlLnByb3RvdHlwZS5ncm93KHVuZGVmaW5lZCks
IFR5cGVFcnJvciwgYGV4cAogICAgIGFzc2VydC5lcShpbnN0YW5jZS5leHBvcnRzLnRhYmxlMC5s
ZW5ndGgsIDApOwogICAgIGFzc2VydC50cnV0aHkoaW5zdGFuY2UuZXhwb3J0cy50YWJsZSBpbnN0
YW5jZW9mIFdlYkFzc2VtYmx5LlRhYmxlKTsKIH0KKworeworICAgIGNvbnN0IGFyZ3MgPSB7bWlu
aW11bTogNSwgZWxlbWVudDogImZ1bmNyZWYifQorICAgIGxldCBtaW5pbXVtID0gZmFsc2UKKyAg
ICBjb25zdCBwcm94eSA9IG5ldyBQcm94eShhcmdzLCB7CisgICAgICAgIGdldCh0YXJnZXQsIHBy
b3AsIHJlY2VpdmVyKSB7CisgICAgICAgICAgICBpZiAocHJvcCA9PT0gIm1pbmltdW0iKSB7Cisg
ICAgICAgICAgICAgICAgbWluaW11bSA9IHRydWU7CisgICAgICAgICAgICB9CisgICAgICAgICAg
ICByZXR1cm4gUmVmbGVjdC5nZXQoLi4uYXJndW1lbnRzKTsKKyAgICAgICAgfQorICAgIH0pCisg
ICAgY29uc3QgdGFibGUgPSBuZXcgV2ViQXNzZW1ibHkuVGFibGUocHJveHkpOworICAgIGFzc2Vy
dC5lcSh0YWJsZS5sZW5ndGgsIDUpOworICAgIGFzc2VydC50cnV0aHkobWluaW11bSk7CisKKyAg
ICBsZXQgdGhyZXcgPSBmYWxzZTsKKyAgICB0cnkgeworICAgICAgICBuZXcgV2ViQXNzZW1ibHku
VGFibGUoe21pbmltdW06IDUsIGluaXRpYWw6IDUsIGVsZW1lbnQ6ICJmdW5jcmVmIn0pOworICAg
IH0gY2F0Y2ggKGUpIHsKKyAgICAgICAgYXNzZXJ0LnRydXRoeShlIGluc3RhbmNlb2YgVHlwZUVy
cm9yKTsKKyAgICAgICAgYXNzZXJ0LmVxKGUubWVzc2FnZSwgIldlYkFzc2VtYmx5LlRhYmxlICdp
bml0aWFsJyBhbmQgJ21pbmltdW0nIG9wdGlvbnMgYXJlIHNwZWNpZmllZCBhdCB0aGUgc2FtZSB0
aW1lIikKKyAgICAgICAgdGhyZXcgPSB0cnVlOworICAgIH0KKyAgICBhc3NlcnQudHJ1dGh5KHRo
cmV3KTsKK30KZGlmZiAtLWdpdCBhL0pTVGVzdHMvd2FzbS9qcy1hcGkvdGVzdF9tZW1vcnlfY29u
c3RydWN0b3IuanMgYi9KU1Rlc3RzL3dhc20vanMtYXBpL3Rlc3RfbWVtb3J5X2NvbnN0cnVjdG9y
LmpzCmluZGV4IGI4ODkzZWFiN2FmMmZhYzBlYTM0OGM1ZWU1MjU2N2MzY2U1NGM2ZDkuLjdmMGM5
MjEwMTFmNTIzYzMzZDYxOWY4NmEzZjk4ZDEwMzlmMWJkNmEgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMv
d2FzbS9qcy1hcGkvdGVzdF9tZW1vcnlfY29uc3RydWN0b3IuanMKKysrIGIvSlNUZXN0cy93YXNt
L2pzLWFwaS90ZXN0X21lbW9yeV9jb25zdHJ1Y3Rvci5qcwpAQCAtODEsMyArODEsMjkgQEAgZnVu
Y3Rpb24gdGVzdEludmFsaWRTaXplKGRlc2NyaXB0aW9uLCBwcm9wTmFtZSkgewogICAgIH0KICAg
ICBhc3NlcnQodGhyZXcpOwogfQorCit7CisgICAgY29uc3QgYXJncyA9IHttaW5pbXVtOiA1fTsK
KyAgICBsZXQgbWluaW11bSA9IGZhbHNlOworICAgIGNvbnN0IHByb3h5ID0gbmV3IFByb3h5KGFy
Z3MsIHsKKyAgICAgICAgZ2V0KHRhcmdldCwgcHJvcCwgcmVjZWl2ZXIpIHsKKyAgICAgICAgICAg
IGlmIChwcm9wID09PSAibWluaW11bSIpIHsKKyAgICAgICAgICAgICAgICBtaW5pbXVtID0gdHJ1
ZTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHJldHVybiBSZWZsZWN0LmdldCguLi5hcmd1
bWVudHMpOworICAgICAgICB9CisgICAgfSkKKyAgICBjb25zdCBtZW0gPSBuZXcgV2ViQXNzZW1i
bHkuTWVtb3J5KHByb3h5KTsKKyAgICBhc3NlcnQobWVtLmJ1ZmZlci5ieXRlTGVuZ3RoID09PSA1
ICogcGFnZVNpemUpOworICAgIGFzc2VydChtaW5pbXVtKTsKKworICAgIGxldCB0aHJldyA9IGZh
bHNlOworICAgIHRyeSB7CisgICAgICAgIG5ldyBXZWJBc3NlbWJseS5NZW1vcnkoe21pbmltdW06
IDUsIGluaXRpYWw6IDV9KTsKKyAgICB9IGNhdGNoIChlKSB7CisgICAgICAgIGFzc2VydChlIGlu
c3RhbmNlb2YgVHlwZUVycm9yKTsKKyAgICAgICAgYXNzZXJ0KGUubWVzc2FnZSA9PT0gIldlYkFz
c2VtYmx5Lk1lbW9yeSAnaW5pdGlhbCcgYW5kICdtaW5pbXVtJyBvcHRpb25zIGFyZSBzcGVjaWZp
ZWQgYXQgdGhlIHNhbWUgdGltZSIpOworICAgICAgICB0aHJldyA9IHRydWU7CisgICAgfQorICAg
IGFzc2VydCh0aHJldyk7Cit9Cg==
</data>
<flag name="commit-queue"
          id="434067"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>416510</attachid>
            <date>2020-12-18 06:02:27 -0800</date>
            <delta_ts>2020-12-21 07:04:15 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-219600-20201218150225.patch</filename>
            <type>text/plain</type>
            <size>11533</size>
            <attacher>jtallon</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcwMTY1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBk
NGMwOWYyOGVjY2I2MGRkYWYwMzgxYTJkMGI1YWMwOWNhZjVjMDMxLi40OWMwODg2ZDkxZDJhMDYx
NmI2ZjYzOWZmZDlmMDcxNjgxM2U0MGNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxOSBAQAorMjAyMC0xMi0wNyAgSmVzc2ljYSBUYWxsb24gIDxqdGFsbG9uQGlnYWxpYS5j
b20+CisKKyAgICAgICAgW0pTQ10gQWRkIG1pbmltdW0gcGFyYW1ldGVyIHRvIHRoZSBXQVNNIEpT
LUFQSSBmb3IgTWVtb3J5ICYgVGFibGUuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMTk2MDAKKworICAgICAgICBUaGlzIHBhdGNoIGFkZHMgYSAibWlu
aW11bSIgcGVyYW1ldGVyIHRvIHRoZSBjb25zdHJ1Y3RvciBvZiBib3RoIFdlYkFzc2VtYmx5Lk1l
bW9yeSBhbmQKKyAgICAgICAgV2ViQXNzZW1ibHkuVGFibGUuIFRoaXMgcmVwcmVzZW50cyB0aGUg
c2FtZSB2YWx1ZSBhcyB0aGUgImluaXRpYWwiIHBlcmFtZXRlci4gVGhlIG5ldworICAgICAgICBw
ZXJhbWV0ZXIgbmFtZSBpcyBvdXRsaW5lZCBoZXJlIFsxXS4gSXQgaXMgcGFydCBvZiB0aGUgSlMg
dHlwZSByZWZsZWN0aW9uIHByb3Bvc2FsLgorCisgICAgICAgIFsxXTogaHR0cHM6Ly9naXRodWIu
Y29tL1dlYkFzc2VtYmx5L2pzLXR5cGVzL2Jsb2IvbWFzdGVyL3Byb3Bvc2Fscy9qcy10eXBlcy9P
dmVydmlldy5tZCNuYW1pbmctb2Ytc2l6ZS1saW1pdHMKKworICAgICAgICAqIEpTVGVzdHMvd2Fz
bS9qcy1hcGkvdGFibGUuanM6CisgICAgICAgICogSlNUZXN0cy93YXNtL2pzLWFwaS90ZXN0X21l
bW9yeV9jb25zdHJ1Y3Rvci5qczoKKyAgICAgICAgKiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseU1lbW9yeUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IuY3BwOgor
CiAyMDIwLTExLTE5ICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CiAKICAgICAg
ICAgW0pTQ10gRW5hYmxlIHByaXZhdGUgaW5zdGFuY2UgYW5kIHN0YXRpYyBmaWVsZHMKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TWVtb3J5Q29u
c3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlN
ZW1vcnlDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMjU2ZWIwZmZjMzRhYjczNWJjNTMyODdjNzVmNmIw
N2VjNmI4ZjdjZS4uY2E0YjZhODQ3NTc0NDY1YTg2NmE4NDg0MThiNjMxM2M0YjhmMWVjMCAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNZW1vcnlD
b25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNz
ZW1ibHlNZW1vcnlDb25zdHJ1Y3Rvci5jcHAKQEAgLTY4LDggKzY4LDE4IEBAIEpTQ19ERUZJTkVf
SE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5TWVtb3J5LCAoSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iCiAgICAgV2FzbTo6UGFnZUNvdW50IGluaXRpYWxQYWdlQ291bnQ7CiAgICAg
ewogICAgICAgICBJZGVudGlmaWVyIGluaXRpYWwgPSBJZGVudGlmaWVyOjpmcm9tU3RyaW5nKHZt
LCAiaW5pdGlhbCIpOwotICAgICAgICBKU1ZhbHVlIG1pblNpemVWYWx1ZSA9IG1lbW9yeURlc2Ny
aXB0b3ItPmdldChnbG9iYWxPYmplY3QsIGluaXRpYWwpOworICAgICAgICBKU1ZhbHVlIGluaXRT
aXplVmFsdWUgPSBtZW1vcnlEZXNjcmlwdG9yLT5nZXQoZ2xvYmFsT2JqZWN0LCBpbml0aWFsKTsK
ICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0aHJvd1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgp
KTsKKyAgICAgICAgSWRlbnRpZmllciBtaW5pbXVtID0gSWRlbnRpZmllcjo6ZnJvbVN0cmluZyh2
bSwgIm1pbmltdW0iKTsKKyAgICAgICAgSlNWYWx1ZSBtaW5TaXplVmFsdWUgPSBtZW1vcnlEZXNj
cmlwdG9yLT5nZXQoZ2xvYmFsT2JqZWN0LCBtaW5pbXVtKTsKKyAgICAgICAgUkVUVVJOX0lGX0VY
Q0VQVElPTih0aHJvd1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKKyAgICAgICAgaWYgKCFtaW5T
aXplVmFsdWUuaXNVbmRlZmluZWQoKSAmJiAhaW5pdFNpemVWYWx1ZS5pc1VuZGVmaW5lZCgpKSB7
CisgICAgICAgICAgICAvLyBFcnJvciBiZWNhdXNlIGJvdGggc3BlY2lmaWVkLgorICAgICAgICAg
ICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCAiV2Vi
QXNzZW1ibHkuTWVtb3J5ICdpbml0aWFsJyBhbmQgJ21pbmltdW0nIG9wdGlvbnMgYXJlIHNwZWNp
ZmllZCBhdCB0aGUgc2FtZSB0aW1lIik7CisgICAgICAgIH0KKyAgICAgICAgaWYgKCFpbml0U2l6
ZVZhbHVlLmlzVW5kZWZpbmVkKCkpCisgICAgICAgICAgICBtaW5TaXplVmFsdWUgPSBpbml0U2l6
ZVZhbHVlOworCiAgICAgICAgIHVpbnQzMl90IHNpemUgPSB0b05vbldyYXBwaW5nVWludDMyKGds
b2JhbE9iamVjdCwgbWluU2l6ZVZhbHVlKTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0
aHJvd1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICAgICAgaWYgKCFXYXNtOjpQYWdlQ291
bnQ6OmlzVmFsaWQoc2l6ZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vanMvV2ViQXNzZW1ibHlUYWJsZUNvbnN0cnVjdG9yLmNwcAppbmRleCA5MjVlMDZl
NGFmYjE3YmIxMjIxMjVjYzdiOWJkYjhhYmFiNTcwNWI5Li44MjZlNThlYjVjMzgyNzFhOTlhNWFh
MDE3NWNlYTA5MmY1OGExZGQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVDb25zdHJ1Y3Rvci5jcHAKQEAgLTgxLDYg
KzgxLDE1IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5
VGFibGUsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqCiAgICAgSWRlbnRpZmllciBpbml0aWFs
SWRlbnQgPSBJZGVudGlmaWVyOjpmcm9tU3RyaW5nKHZtLCAiaW5pdGlhbCIpOwogICAgIEpTVmFs
dWUgaW5pdGlhbFNpemVWYWx1ZSA9IG1lbW9yeURlc2NyaXB0b3ItPmdldChnbG9iYWxPYmplY3Qs
IGluaXRpYWxJZGVudCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0aHJvd1Njb3BlLCBlbmNv
ZGVkSlNWYWx1ZSgpKTsKKyAgICBJZGVudGlmaWVyIG1pbmltdW1JZGVudCA9IElkZW50aWZpZXI6
OmZyb21TdHJpbmcodm0sICJtaW5pbXVtIik7CisgICAgSlNWYWx1ZSBtaW5TaXplVmFsdWUgPSBt
ZW1vcnlEZXNjcmlwdG9yLT5nZXQoZ2xvYmFsT2JqZWN0LCBtaW5pbXVtSWRlbnQpOworICAgIFJF
VFVSTl9JRl9FWENFUFRJT04odGhyb3dTY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CisgICAgaWYg
KCFpbml0aWFsU2l6ZVZhbHVlLmlzVW5kZWZpbmVkKCkgJiYgIW1pblNpemVWYWx1ZS5pc1VuZGVm
aW5lZCgpKQorICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHRo
cm93U2NvcGUsICJXZWJBc3NlbWJseS5UYWJsZSAnaW5pdGlhbCcgYW5kICdtaW5pbXVtJyBvcHRp
b25zIGFyZSBzcGVjaWZpZWQgYXQgdGhlIHNhbWUgdGltZSIpOworCisgICAgaWYgKCFtaW5TaXpl
VmFsdWUuaXNVbmRlZmluZWQoKSkKKyAgICAgICAgaW5pdGlhbFNpemVWYWx1ZSA9IG1pblNpemVW
YWx1ZTsKKwogICAgIHVpbnQzMl90IGluaXRpYWwgPSB0b05vbldyYXBwaW5nVWludDMyKGdsb2Jh
bE9iamVjdCwgaW5pdGlhbFNpemVWYWx1ZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0aHJv
d1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDE5MTZiMjMxMTAxZTZlNGNkZjE5
NTAxOGQzNzNhZGY3YzhiNDY4NzQuLjkxNmVkZGI1YTEwMTFmMmM5OWU1ZGJlY2MyNDc4MTEwZGYw
MzBjODQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxOS0xMi0wNyAgSmVzc2ljYSBUYWxsb24g
IDxqdGFsbG9uQGlnYWxpYS5jb20+CisKKyAgICAgICAgW0pTQ10gRml4IGV4cGVjdGF0aW9uIGZv
ciBXQVNNIEpTLXR5cGUgcmVmbGVjdGlvbiBXUFRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTk2MDAKKworICAgICAgICBDaGFuZ2VkIHRoZSBleHBl
Y3RhdGlvbnMgZm9yIHRoZSBXQVNNIEpTLVR5cGUgcmVmbGVjdGlvbnMgY29uc3RydWN0b3IKKyAg
ICAgICAgdGVzdHMgYXMgd2Ugbm93IHN1cHBvcnQgdGhlIG1pbmltdW0gcGFyYW1ldGVyLgorCisg
ICAgICAgICogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNt
L2pzYXBpL21lbW9yeS9jb25zdHJ1Y3Rvci10eXBlcy50ZW50YXRpdmUuYW55LWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dhc20vanNhcGkvdGFibGUvY29uc3RydWN0b3ItdHlwZXMudGVudGF0aXZlLmFueS1leHBlY3Rl
ZC50eHQ6CisgICAgICAgICogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93YXNtL2pzYXBpL21lbW9yeS9jb25zdHJ1Y3Rvci10eXBlcy50ZW50YXRpdmUuYW55Lndv
cmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL3RhYmxlL2NvbnN0cnVjdG9yLXR5cGVzLnRlbnRh
dGl2ZS5hbnkud29ya2VyLWV4cGVjdGVkLnR4dDoKKwogMjAyMC0xMS0yMiAgRGllZ28gUGlubyBH
YXJjaWEgIDxkcGlub0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHTElCXVtHVEtdIFVucmV2aWV3
ZWQgdGVzdCBnYXJkZW5pbmcuIFVwZGF0ZWQgZXhwZWN0YXRpb25zIGFuZCBiYXNlbGluZXMgYWZ0
ZXIgMjcwMTY0LgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93YXNtL2pzYXBpL21lbW9yeS9jb25zdHJ1Y3Rvci10eXBlcy50ZW50YXRpdmUu
YW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2FzbS9qc2FwaS9tZW1vcnkvY29uc3RydWN0b3ItdHlwZXMudGVudGF0aXZlLmFueS1l
eHBlY3RlZC50eHQKaW5kZXggNTM3ZDE4YjdmMjk4N2VlMGMwNDBkY2I0NzFmNTJkMjg4NTg2OTli
Zi4uMmEwYjRkNWZhODkyNjFhM2Y5NTViODY0OWU4NzMxYzljYmEzZTZhYyAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL21l
bW9yeS9jb25zdHJ1Y3Rvci10eXBlcy50ZW50YXRpdmUuYW55LWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dhc20vanNhcGkvbWVt
b3J5L2NvbnN0cnVjdG9yLXR5cGVzLnRlbnRhdGl2ZS5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDUg
KzEsNSBAQAogCi1GQUlMIEluaXRpYWxpemluZyB3aXRoIGJvdGggaW5pdGlhbCBhbmQgbWluaW11
bSBhc3NlcnRfdGhyb3dzX2pzOiBmdW5jdGlvbiAiKCkgPT4gbmV3IFdlYkFzc2VtYmx5Lk1lbW9y
eShhcmd1bWVudCkiIGRpZCBub3QgdGhyb3cKLUZBSUwgWmVybyBtaW5pbXVtIEV4cGVjdCBhbiBp
bnRlZ2VyIGFyZ3VtZW50IGluIHRoZSByYW5nZTogWzAsIDJeMzIgLSAxXQotRkFJTCBOb24temVy
byBtaW5pbXVtIEV4cGVjdCBhbiBpbnRlZ2VyIGFyZ3VtZW50IGluIHRoZSByYW5nZTogWzAsIDJe
MzIgLSAxXQorUEFTUyBJbml0aWFsaXppbmcgd2l0aCBib3RoIGluaXRpYWwgYW5kIG1pbmltdW0K
K1BBU1MgWmVybyBtaW5pbXVtCitQQVNTIE5vbi16ZXJvIG1pbmltdW0KIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL21l
bW9yeS9jb25zdHJ1Y3Rvci10eXBlcy50ZW50YXRpdmUuYW55Lndvcmtlci1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dhc20vanNhcGkv
bWVtb3J5L2NvbnN0cnVjdG9yLXR5cGVzLnRlbnRhdGl2ZS5hbnkud29ya2VyLWV4cGVjdGVkLnR4
dAppbmRleCA1MzdkMThiN2YyOTg3ZWUwYzA0MGRjYjQ3MWY1MmQyODg1ODY5OWJmLi4yYTBiNGQ1
ZmE4OTI2MWEzZjk1NWI4NjQ5ZTg3MzFjOWNiYTNlNmFjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dhc20vanNhcGkvbWVtb3J5L2NvbnN0
cnVjdG9yLXR5cGVzLnRlbnRhdGl2ZS5hbnkud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dhc20vanNhcGkvbWVtb3J5
L2NvbnN0cnVjdG9yLXR5cGVzLnRlbnRhdGl2ZS5hbnkud29ya2VyLWV4cGVjdGVkLnR4dApAQCAt
MSw1ICsxLDUgQEAKIAotRkFJTCBJbml0aWFsaXppbmcgd2l0aCBib3RoIGluaXRpYWwgYW5kIG1p
bmltdW0gYXNzZXJ0X3Rocm93c19qczogZnVuY3Rpb24gIigpID0+IG5ldyBXZWJBc3NlbWJseS5N
ZW1vcnkoYXJndW1lbnQpIiBkaWQgbm90IHRocm93Ci1GQUlMIFplcm8gbWluaW11bSBFeHBlY3Qg
YW4gaW50ZWdlciBhcmd1bWVudCBpbiB0aGUgcmFuZ2U6IFswLCAyXjMyIC0gMV0KLUZBSUwgTm9u
LXplcm8gbWluaW11bSBFeHBlY3QgYW4gaW50ZWdlciBhcmd1bWVudCBpbiB0aGUgcmFuZ2U6IFsw
LCAyXjMyIC0gMV0KK1BBU1MgSW5pdGlhbGl6aW5nIHdpdGggYm90aCBpbml0aWFsIGFuZCBtaW5p
bXVtCitQQVNTIFplcm8gbWluaW11bQorUEFTUyBOb24temVybyBtaW5pbXVtCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2FzbS9qc2Fw
aS90YWJsZS9jb25zdHJ1Y3Rvci10eXBlcy50ZW50YXRpdmUuYW55LWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2FzbS9qc2FwaS90YWJs
ZS9jb25zdHJ1Y3Rvci10eXBlcy50ZW50YXRpdmUuYW55LWV4cGVjdGVkLnR4dAppbmRleCBlNTY3
OWVlMmE4OTIzMTRhOWRhZWNkZWRhMjRhMzIzNWI0MTdkM2E4Li4yYTBiNGQ1ZmE4OTI2MWEzZjk1
NWI4NjQ5ZTg3MzFjOWNiYTNlNmFjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dhc20vanNhcGkvdGFibGUvY29uc3RydWN0b3ItdHlwZXMu
dGVudGF0aXZlLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL3RhYmxlL2NvbnN0cnVjdG9yLXR5cGVzLnRl
bnRhdGl2ZS5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCi1GQUlMIEluaXRpYWxp
emluZyB3aXRoIGJvdGggaW5pdGlhbCBhbmQgbWluaW11bSBhc3NlcnRfdGhyb3dzX2pzOiBmdW5j
dGlvbiAiKCkgPT4gbmV3IFdlYkFzc2VtYmx5LlRhYmxlKGFyZ3VtZW50KSIgZGlkIG5vdCB0aHJv
dwotRkFJTCBaZXJvIG1pbmltdW0gRXhwZWN0IGFuIGludGVnZXIgYXJndW1lbnQgaW4gdGhlIHJh
bmdlOiBbMCwgMl4zMiAtIDFdCi1GQUlMIE5vbi16ZXJvIG1pbmltdW0gRXhwZWN0IGFuIGludGVn
ZXIgYXJndW1lbnQgaW4gdGhlIHJhbmdlOiBbMCwgMl4zMiAtIDFdCitQQVNTIEluaXRpYWxpemlu
ZyB3aXRoIGJvdGggaW5pdGlhbCBhbmQgbWluaW11bQorUEFTUyBaZXJvIG1pbmltdW0KK1BBU1Mg
Tm9uLXplcm8gbWluaW11bQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dhc20vanNhcGkvdGFibGUvY29uc3RydWN0b3ItdHlwZXMudGVu
dGF0aXZlLmFueS53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL3RhYmxlL2NvbnN0cnVjdG9yLXR5cGVzLnRl
bnRhdGl2ZS5hbnkud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCBlNTY3OWVlMmE4OTIzMTRhOWRh
ZWNkZWRhMjRhMzIzNWI0MTdkM2E4Li4yYTBiNGQ1ZmE4OTI2MWEzZjk1NWI4NjQ5ZTg3MzFjOWNi
YTNlNmFjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dhc20vanNhcGkvdGFibGUvY29uc3RydWN0b3ItdHlwZXMudGVudGF0aXZlLmFueS53
b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2FzbS9qc2FwaS90YWJsZS9jb25zdHJ1Y3Rvci10eXBlcy50ZW50YXRpdmUu
YW55Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwgSW5pdGlhbGl6
aW5nIHdpdGggYm90aCBpbml0aWFsIGFuZCBtaW5pbXVtIGFzc2VydF90aHJvd3NfanM6IGZ1bmN0
aW9uICIoKSA9PiBuZXcgV2ViQXNzZW1ibHkuVGFibGUoYXJndW1lbnQpIiBkaWQgbm90IHRocm93
Ci1GQUlMIFplcm8gbWluaW11bSBFeHBlY3QgYW4gaW50ZWdlciBhcmd1bWVudCBpbiB0aGUgcmFu
Z2U6IFswLCAyXjMyIC0gMV0KLUZBSUwgTm9uLXplcm8gbWluaW11bSBFeHBlY3QgYW4gaW50ZWdl
ciBhcmd1bWVudCBpbiB0aGUgcmFuZ2U6IFswLCAyXjMyIC0gMV0KK1BBU1MgSW5pdGlhbGl6aW5n
IHdpdGggYm90aCBpbml0aWFsIGFuZCBtaW5pbXVtCitQQVNTIFplcm8gbWluaW11bQorUEFTUyBO
b24temVybyBtaW5pbXVtCiAKZGlmZiAtLWdpdCBhL0pTVGVzdHMvd2FzbS9qcy1hcGkvdGFibGUu
anMgYi9KU1Rlc3RzL3dhc20vanMtYXBpL3RhYmxlLmpzCmluZGV4IGQ0MDlhNDgxMDhkMmExZTNi
NTZkMGEzMmUzZjBlOWQxNDA5ODYwZTMuLmRiNzg3OGYwY2EyM2RjOWUxZjE5NjJhOGY1NjU2NzA2
OTg4ZTAyZGYgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvd2FzbS9qcy1hcGkvdGFibGUuanMKKysrIGIv
SlNUZXN0cy93YXNtL2pzLWFwaS90YWJsZS5qcwpAQCAtMzY0LDMgKzM2NCwyOSBAQCBhc3NlcnQu
dGhyb3dzKCgpID0+IFdlYkFzc2VtYmx5LlRhYmxlLnByb3RvdHlwZS5ncm93KHVuZGVmaW5lZCks
IFR5cGVFcnJvciwgYGV4cAogICAgIGFzc2VydC5lcShpbnN0YW5jZS5leHBvcnRzLnRhYmxlMC5s
ZW5ndGgsIDApOwogICAgIGFzc2VydC50cnV0aHkoaW5zdGFuY2UuZXhwb3J0cy50YWJsZSBpbnN0
YW5jZW9mIFdlYkFzc2VtYmx5LlRhYmxlKTsKIH0KKworeworICAgIGNvbnN0IGFyZ3MgPSB7bWlu
aW11bTogNSwgZWxlbWVudDogImZ1bmNyZWYifQorICAgIGxldCBtaW5pbXVtID0gZmFsc2UKKyAg
ICBjb25zdCBwcm94eSA9IG5ldyBQcm94eShhcmdzLCB7CisgICAgICAgIGdldCh0YXJnZXQsIHBy
b3AsIHJlY2VpdmVyKSB7CisgICAgICAgICAgICBpZiAocHJvcCA9PT0gIm1pbmltdW0iKSB7Cisg
ICAgICAgICAgICAgICAgbWluaW11bSA9IHRydWU7CisgICAgICAgICAgICB9CisgICAgICAgICAg
ICByZXR1cm4gUmVmbGVjdC5nZXQoLi4uYXJndW1lbnRzKTsKKyAgICAgICAgfQorICAgIH0pCisg
ICAgY29uc3QgdGFibGUgPSBuZXcgV2ViQXNzZW1ibHkuVGFibGUocHJveHkpOworICAgIGFzc2Vy
dC5lcSh0YWJsZS5sZW5ndGgsIDUpOworICAgIGFzc2VydC50cnV0aHkobWluaW11bSk7CisKKyAg
ICBsZXQgdGhyZXcgPSBmYWxzZTsKKyAgICB0cnkgeworICAgICAgICBuZXcgV2ViQXNzZW1ibHku
VGFibGUoe21pbmltdW06IDUsIGluaXRpYWw6IDUsIGVsZW1lbnQ6ICJmdW5jcmVmIn0pOworICAg
IH0gY2F0Y2ggKGUpIHsKKyAgICAgICAgYXNzZXJ0LnRydXRoeShlIGluc3RhbmNlb2YgVHlwZUVy
cm9yKTsKKyAgICAgICAgYXNzZXJ0LmVxKGUubWVzc2FnZSwgIldlYkFzc2VtYmx5LlRhYmxlICdp
bml0aWFsJyBhbmQgJ21pbmltdW0nIG9wdGlvbnMgYXJlIHNwZWNpZmllZCBhdCB0aGUgc2FtZSB0
aW1lIikKKyAgICAgICAgdGhyZXcgPSB0cnVlOworICAgIH0KKyAgICBhc3NlcnQudHJ1dGh5KHRo
cmV3KTsKK30KZGlmZiAtLWdpdCBhL0pTVGVzdHMvd2FzbS9qcy1hcGkvdGVzdF9tZW1vcnlfY29u
c3RydWN0b3IuanMgYi9KU1Rlc3RzL3dhc20vanMtYXBpL3Rlc3RfbWVtb3J5X2NvbnN0cnVjdG9y
LmpzCmluZGV4IGI4ODkzZWFiN2FmMmZhYzBlYTM0OGM1ZWU1MjU2N2MzY2U1NGM2ZDkuLjdmMGM5
MjEwMTFmNTIzYzMzZDYxOWY4NmEzZjk4ZDEwMzlmMWJkNmEgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMv
d2FzbS9qcy1hcGkvdGVzdF9tZW1vcnlfY29uc3RydWN0b3IuanMKKysrIGIvSlNUZXN0cy93YXNt
L2pzLWFwaS90ZXN0X21lbW9yeV9jb25zdHJ1Y3Rvci5qcwpAQCAtODEsMyArODEsMjkgQEAgZnVu
Y3Rpb24gdGVzdEludmFsaWRTaXplKGRlc2NyaXB0aW9uLCBwcm9wTmFtZSkgewogICAgIH0KICAg
ICBhc3NlcnQodGhyZXcpOwogfQorCit7CisgICAgY29uc3QgYXJncyA9IHttaW5pbXVtOiA1fTsK
KyAgICBsZXQgbWluaW11bSA9IGZhbHNlOworICAgIGNvbnN0IHByb3h5ID0gbmV3IFByb3h5KGFy
Z3MsIHsKKyAgICAgICAgZ2V0KHRhcmdldCwgcHJvcCwgcmVjZWl2ZXIpIHsKKyAgICAgICAgICAg
IGlmIChwcm9wID09PSAibWluaW11bSIpIHsKKyAgICAgICAgICAgICAgICBtaW5pbXVtID0gdHJ1
ZTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHJldHVybiBSZWZsZWN0LmdldCguLi5hcmd1
bWVudHMpOworICAgICAgICB9CisgICAgfSkKKyAgICBjb25zdCBtZW0gPSBuZXcgV2ViQXNzZW1i
bHkuTWVtb3J5KHByb3h5KTsKKyAgICBhc3NlcnQobWVtLmJ1ZmZlci5ieXRlTGVuZ3RoID09PSA1
ICogcGFnZVNpemUpOworICAgIGFzc2VydChtaW5pbXVtKTsKKworICAgIGxldCB0aHJldyA9IGZh
bHNlOworICAgIHRyeSB7CisgICAgICAgIG5ldyBXZWJBc3NlbWJseS5NZW1vcnkoe21pbmltdW06
IDUsIGluaXRpYWw6IDV9KTsKKyAgICB9IGNhdGNoIChlKSB7CisgICAgICAgIGFzc2VydChlIGlu
c3RhbmNlb2YgVHlwZUVycm9yKTsKKyAgICAgICAgYXNzZXJ0KGUubWVzc2FnZSA9PT0gIldlYkFz
c2VtYmx5Lk1lbW9yeSAnaW5pdGlhbCcgYW5kICdtaW5pbXVtJyBvcHRpb25zIGFyZSBzcGVjaWZp
ZWQgYXQgdGhlIHNhbWUgdGltZSIpOworICAgICAgICB0aHJldyA9IHRydWU7CisgICAgfQorICAg
IGFzc2VydCh0aHJldyk7Cit9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>416600</attachid>
            <date>2020-12-21 07:04:25 -0800</date>
            <delta_ts>2020-12-21 13:31:49 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-219600-20201221160423.patch</filename>
            <type>text/plain</type>
            <size>11611</size>
            <attacher>jtallon</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcwMTY1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBk
NGMwOWYyOGVjY2I2MGRkYWYwMzgxYTJkMGI1YWMwOWNhZjVjMDMxLi45OGM0MWM5Y2JlNDU0ZDE1
ZmU2NGFhOWMyOTM5MjY0NjY1ZGQ4MzM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMSBAQAorMjAyMC0xMi0wNyAgSmVzc2ljYSBUYWxsb24gIDxqdGFsbG9uQGlnYWxpYS5j
b20+CisKKyAgICAgICAgW0pTQ10gQWRkIG1pbmltdW0gcGFyYW1ldGVyIHRvIHRoZSBXQVNNIEpT
LUFQSSBmb3IgTWVtb3J5ICYgVGFibGUuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMTk2MDAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIGFkZHMgYSAibWluaW11bSIgcGVyYW1ldGVyIHRv
IHRoZSBjb25zdHJ1Y3RvciBvZiBib3RoIFdlYkFzc2VtYmx5Lk1lbW9yeSBhbmQKKyAgICAgICAg
V2ViQXNzZW1ibHkuVGFibGUuIFRoaXMgcmVwcmVzZW50cyB0aGUgc2FtZSB2YWx1ZSBhcyB0aGUg
ImluaXRpYWwiIHBlcmFtZXRlci4gVGhlIG5ldworICAgICAgICBwZXJhbWV0ZXIgbmFtZSBpcyBv
dXRsaW5lZCBoZXJlIFsxXS4gSXQgaXMgcGFydCBvZiB0aGUgSlMgdHlwZSByZWZsZWN0aW9uIHBy
b3Bvc2FsLgorCisgICAgICAgIFsxXTogaHR0cHM6Ly9naXRodWIuY29tL1dlYkFzc2VtYmx5L2pz
LXR5cGVzL2Jsb2IvbWFzdGVyL3Byb3Bvc2Fscy9qcy10eXBlcy9PdmVydmlldy5tZCNuYW1pbmct
b2Ytc2l6ZS1saW1pdHMKKworICAgICAgICAqIEpTVGVzdHMvd2FzbS9qcy1hcGkvdGFibGUuanM6
CisgICAgICAgICogSlNUZXN0cy93YXNtL2pzLWFwaS90ZXN0X21lbW9yeV9jb25zdHJ1Y3Rvci5q
czoKKyAgICAgICAgKiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1l
bW9yeUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IuY3BwOgorCiAyMDIwLTExLTE5ICBZdXN1
a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CiAKICAgICAgICAgW0pTQ10gRW5hYmxlIHBy
aXZhdGUgaW5zdGFuY2UgYW5kIHN0YXRpYyBmaWVsZHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TWVtb3J5Q29uc3RydWN0b3IuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNZW1vcnlDb25zdHJ1Y3Rvci5j
cHAKaW5kZXggMjU2ZWIwZmZjMzRhYjczNWJjNTMyODdjNzVmNmIwN2VjNmI4ZjdjZS4uY2E0YjZh
ODQ3NTc0NDY1YTg2NmE4NDg0MThiNjMxM2M0YjhmMWVjMCAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNZW1vcnlDb25zdHJ1Y3Rvci5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNZW1vcnlDb25zdHJ1
Y3Rvci5jcHAKQEAgLTY4LDggKzY4LDE4IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihjb25z
dHJ1Y3RKU1dlYkFzc2VtYmx5TWVtb3J5LCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iCiAgICAg
V2FzbTo6UGFnZUNvdW50IGluaXRpYWxQYWdlQ291bnQ7CiAgICAgewogICAgICAgICBJZGVudGlm
aWVyIGluaXRpYWwgPSBJZGVudGlmaWVyOjpmcm9tU3RyaW5nKHZtLCAiaW5pdGlhbCIpOwotICAg
ICAgICBKU1ZhbHVlIG1pblNpemVWYWx1ZSA9IG1lbW9yeURlc2NyaXB0b3ItPmdldChnbG9iYWxP
YmplY3QsIGluaXRpYWwpOworICAgICAgICBKU1ZhbHVlIGluaXRTaXplVmFsdWUgPSBtZW1vcnlE
ZXNjcmlwdG9yLT5nZXQoZ2xvYmFsT2JqZWN0LCBpbml0aWFsKTsKICAgICAgICAgUkVUVVJOX0lG
X0VYQ0VQVElPTih0aHJvd1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKKyAgICAgICAgSWRlbnRp
ZmllciBtaW5pbXVtID0gSWRlbnRpZmllcjo6ZnJvbVN0cmluZyh2bSwgIm1pbmltdW0iKTsKKyAg
ICAgICAgSlNWYWx1ZSBtaW5TaXplVmFsdWUgPSBtZW1vcnlEZXNjcmlwdG9yLT5nZXQoZ2xvYmFs
T2JqZWN0LCBtaW5pbXVtKTsKKyAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0aHJvd1Njb3Bl
LCBlbmNvZGVkSlNWYWx1ZSgpKTsKKyAgICAgICAgaWYgKCFtaW5TaXplVmFsdWUuaXNVbmRlZmlu
ZWQoKSAmJiAhaW5pdFNpemVWYWx1ZS5pc1VuZGVmaW5lZCgpKSB7CisgICAgICAgICAgICAvLyBF
cnJvciBiZWNhdXNlIGJvdGggc3BlY2lmaWVkLgorICAgICAgICAgICAgcmV0dXJuIHRocm93Vk1U
eXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCAiV2ViQXNzZW1ibHkuTWVtb3J5ICdp
bml0aWFsJyBhbmQgJ21pbmltdW0nIG9wdGlvbnMgYXJlIHNwZWNpZmllZCBhdCB0aGUgc2FtZSB0
aW1lIik7CisgICAgICAgIH0KKyAgICAgICAgaWYgKCFpbml0U2l6ZVZhbHVlLmlzVW5kZWZpbmVk
KCkpCisgICAgICAgICAgICBtaW5TaXplVmFsdWUgPSBpbml0U2l6ZVZhbHVlOworCiAgICAgICAg
IHVpbnQzMl90IHNpemUgPSB0b05vbldyYXBwaW5nVWludDMyKGdsb2JhbE9iamVjdCwgbWluU2l6
ZVZhbHVlKTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0aHJvd1Njb3BlLCBlbmNvZGVk
SlNWYWx1ZSgpKTsKICAgICAgICAgaWYgKCFXYXNtOjpQYWdlQ291bnQ6OmlzVmFsaWQoc2l6ZSkp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRh
YmxlQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNz
ZW1ibHlUYWJsZUNvbnN0cnVjdG9yLmNwcAppbmRleCA5MjVlMDZlNGFmYjE3YmIxMjIxMjVjYzdi
OWJkYjhhYmFiNTcwNWI5Li44MjZlNThlYjVjMzgyNzFhOTlhNWFhMDE3NWNlYTA5MmY1OGExZGQ3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRh
YmxlQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dl
YkFzc2VtYmx5VGFibGVDb25zdHJ1Y3Rvci5jcHAKQEAgLTgxLDYgKzgxLDE1IEBAIEpTQ19ERUZJ
TkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5VGFibGUsIChKU0dsb2JhbE9i
amVjdCogZ2xvYmFsT2JqCiAgICAgSWRlbnRpZmllciBpbml0aWFsSWRlbnQgPSBJZGVudGlmaWVy
Ojpmcm9tU3RyaW5nKHZtLCAiaW5pdGlhbCIpOwogICAgIEpTVmFsdWUgaW5pdGlhbFNpemVWYWx1
ZSA9IG1lbW9yeURlc2NyaXB0b3ItPmdldChnbG9iYWxPYmplY3QsIGluaXRpYWxJZGVudCk7CiAg
ICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0aHJvd1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKKyAg
ICBJZGVudGlmaWVyIG1pbmltdW1JZGVudCA9IElkZW50aWZpZXI6OmZyb21TdHJpbmcodm0sICJt
aW5pbXVtIik7CisgICAgSlNWYWx1ZSBtaW5TaXplVmFsdWUgPSBtZW1vcnlEZXNjcmlwdG9yLT5n
ZXQoZ2xvYmFsT2JqZWN0LCBtaW5pbXVtSWRlbnQpOworICAgIFJFVFVSTl9JRl9FWENFUFRJT04o
dGhyb3dTY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CisgICAgaWYgKCFpbml0aWFsU2l6ZVZhbHVl
LmlzVW5kZWZpbmVkKCkgJiYgIW1pblNpemVWYWx1ZS5pc1VuZGVmaW5lZCgpKQorICAgICAgICBy
ZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsICJXZWJBc3Nl
bWJseS5UYWJsZSAnaW5pdGlhbCcgYW5kICdtaW5pbXVtJyBvcHRpb25zIGFyZSBzcGVjaWZpZWQg
YXQgdGhlIHNhbWUgdGltZSIpOworCisgICAgaWYgKCFtaW5TaXplVmFsdWUuaXNVbmRlZmluZWQo
KSkKKyAgICAgICAgaW5pdGlhbFNpemVWYWx1ZSA9IG1pblNpemVWYWx1ZTsKKwogICAgIHVpbnQz
Ml90IGluaXRpYWwgPSB0b05vbldyYXBwaW5nVWludDMyKGdsb2JhbE9iamVjdCwgaW5pdGlhbFNp
emVWYWx1ZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0aHJvd1Njb3BlLCBlbmNvZGVkSlNW
YWx1ZSgpKTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCmluZGV4IDE5MTZiMjMxMTAxZTZlNGNkZjE5NTAxOGQzNzNhZGY3YzhiNDY4
NzQuLjRkNWYwYjUwZGFkMTI1ODQ4M2UxYjQwMjAyZWVmMWU2MjExOGMxYjMgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxOCBAQAorMjAxOS0xMi0wNyAgSmVzc2ljYSBUYWxsb24gIDxqdGFsbG9uQGlnYWxpYS5j
b20+CisKKyAgICAgICAgW0pTQ10gRml4IGV4cGVjdGF0aW9uIGZvciBXQVNNIEpTLXR5cGUgcmVm
bGVjdGlvbiBXUFRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMTk2MDAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBDaGFuZ2VkIHRoZSBleHBlY3RhdGlvbnMgZm9yIHRoZSBXQVNNIEpTLVR5cGUgcmVmbGVj
dGlvbnMgY29uc3RydWN0b3IKKyAgICAgICAgdGVzdHMgYXMgd2Ugbm93IHN1cHBvcnQgdGhlIG1p
bmltdW0gcGFyYW1ldGVyLgorCisgICAgICAgICogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL21lbW9yeS9jb25zdHJ1Y3Rvci10eXBlcy50ZW50
YXRpdmUuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dhc20vanNhcGkvdGFibGUvY29uc3RydWN0b3ItdHlwZXMu
dGVudGF0aXZlLmFueS1leHBlY3RlZC50eHQ6CisgICAgICAgICogTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL21lbW9yeS9jb25zdHJ1Y3Rvci10
eXBlcy50ZW50YXRpdmUuYW55Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL3RhYmxlL2Nv
bnN0cnVjdG9yLXR5cGVzLnRlbnRhdGl2ZS5hbnkud29ya2VyLWV4cGVjdGVkLnR4dDoKKwogMjAy
MC0xMS0yMiAgRGllZ28gUGlubyBHYXJjaWEgIDxkcGlub0BpZ2FsaWEuY29tPgogCiAgICAgICAg
IFtHTElCXVtHVEtdIFVucmV2aWV3ZWQgdGVzdCBnYXJkZW5pbmcuIFVwZGF0ZWQgZXhwZWN0YXRp
b25zIGFuZCBiYXNlbGluZXMgYWZ0ZXIgMjcwMTY0LgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL21lbW9yeS9jb25zdHJ1
Y3Rvci10eXBlcy50ZW50YXRpdmUuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2FzbS9qc2FwaS9tZW1vcnkvY29uc3RydWN0b3It
dHlwZXMudGVudGF0aXZlLmFueS1leHBlY3RlZC50eHQKaW5kZXggNTM3ZDE4YjdmMjk4N2VlMGMw
NDBkY2I0NzFmNTJkMjg4NTg2OTliZi4uMmEwYjRkNWZhODkyNjFhM2Y5NTViODY0OWU4NzMxYzlj
YmEzZTZhYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93YXNtL2pzYXBpL21lbW9yeS9jb25zdHJ1Y3Rvci10eXBlcy50ZW50YXRpdmUuYW55
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dhc20vanNhcGkvbWVtb3J5L2NvbnN0cnVjdG9yLXR5cGVzLnRlbnRhdGl2ZS5hbnkt
ZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCi1GQUlMIEluaXRpYWxpemluZyB3aXRoIGJv
dGggaW5pdGlhbCBhbmQgbWluaW11bSBhc3NlcnRfdGhyb3dzX2pzOiBmdW5jdGlvbiAiKCkgPT4g
bmV3IFdlYkFzc2VtYmx5Lk1lbW9yeShhcmd1bWVudCkiIGRpZCBub3QgdGhyb3cKLUZBSUwgWmVy
byBtaW5pbXVtIEV4cGVjdCBhbiBpbnRlZ2VyIGFyZ3VtZW50IGluIHRoZSByYW5nZTogWzAsIDJe
MzIgLSAxXQotRkFJTCBOb24temVybyBtaW5pbXVtIEV4cGVjdCBhbiBpbnRlZ2VyIGFyZ3VtZW50
IGluIHRoZSByYW5nZTogWzAsIDJeMzIgLSAxXQorUEFTUyBJbml0aWFsaXppbmcgd2l0aCBib3Ro
IGluaXRpYWwgYW5kIG1pbmltdW0KK1BBU1MgWmVybyBtaW5pbXVtCitQQVNTIE5vbi16ZXJvIG1p
bmltdW0KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93YXNtL2pzYXBpL21lbW9yeS9jb25zdHJ1Y3Rvci10eXBlcy50ZW50YXRpdmUuYW55
Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dhc20vanNhcGkvbWVtb3J5L2NvbnN0cnVjdG9yLXR5cGVzLnRlbnRhdGl2ZS5h
bnkud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCA1MzdkMThiN2YyOTg3ZWUwYzA0MGRjYjQ3MWY1
MmQyODg1ODY5OWJmLi4yYTBiNGQ1ZmE4OTI2MWEzZjk1NWI4NjQ5ZTg3MzFjOWNiYTNlNmFjIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dh
c20vanNhcGkvbWVtb3J5L2NvbnN0cnVjdG9yLXR5cGVzLnRlbnRhdGl2ZS5hbnkud29ya2VyLWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3dhc20vanNhcGkvbWVtb3J5L2NvbnN0cnVjdG9yLXR5cGVzLnRlbnRhdGl2ZS5hbnkud29y
a2VyLWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAotRkFJTCBJbml0aWFsaXppbmcgd2l0
aCBib3RoIGluaXRpYWwgYW5kIG1pbmltdW0gYXNzZXJ0X3Rocm93c19qczogZnVuY3Rpb24gIigp
ID0+IG5ldyBXZWJBc3NlbWJseS5NZW1vcnkoYXJndW1lbnQpIiBkaWQgbm90IHRocm93Ci1GQUlM
IFplcm8gbWluaW11bSBFeHBlY3QgYW4gaW50ZWdlciBhcmd1bWVudCBpbiB0aGUgcmFuZ2U6IFsw
LCAyXjMyIC0gMV0KLUZBSUwgTm9uLXplcm8gbWluaW11bSBFeHBlY3QgYW4gaW50ZWdlciBhcmd1
bWVudCBpbiB0aGUgcmFuZ2U6IFswLCAyXjMyIC0gMV0KK1BBU1MgSW5pdGlhbGl6aW5nIHdpdGgg
Ym90aCBpbml0aWFsIGFuZCBtaW5pbXVtCitQQVNTIFplcm8gbWluaW11bQorUEFTUyBOb24temVy
byBtaW5pbXVtCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2FzbS9qc2FwaS90YWJsZS9jb25zdHJ1Y3Rvci10eXBlcy50ZW50YXRpdmUu
YW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2FzbS9qc2FwaS90YWJsZS9jb25zdHJ1Y3Rvci10eXBlcy50ZW50YXRpdmUuYW55LWV4
cGVjdGVkLnR4dAppbmRleCBlNTY3OWVlMmE4OTIzMTRhOWRhZWNkZWRhMjRhMzIzNWI0MTdkM2E4
Li4yYTBiNGQ1ZmE4OTI2MWEzZjk1NWI4NjQ5ZTg3MzFjOWNiYTNlNmFjIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dhc20vanNhcGkvdGFi
bGUvY29uc3RydWN0b3ItdHlwZXMudGVudGF0aXZlLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL3RhYmxl
L2NvbnN0cnVjdG9yLXR5cGVzLnRlbnRhdGl2ZS5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEs
NSBAQAogCi1GQUlMIEluaXRpYWxpemluZyB3aXRoIGJvdGggaW5pdGlhbCBhbmQgbWluaW11bSBh
c3NlcnRfdGhyb3dzX2pzOiBmdW5jdGlvbiAiKCkgPT4gbmV3IFdlYkFzc2VtYmx5LlRhYmxlKGFy
Z3VtZW50KSIgZGlkIG5vdCB0aHJvdwotRkFJTCBaZXJvIG1pbmltdW0gRXhwZWN0IGFuIGludGVn
ZXIgYXJndW1lbnQgaW4gdGhlIHJhbmdlOiBbMCwgMl4zMiAtIDFdCi1GQUlMIE5vbi16ZXJvIG1p
bmltdW0gRXhwZWN0IGFuIGludGVnZXIgYXJndW1lbnQgaW4gdGhlIHJhbmdlOiBbMCwgMl4zMiAt
IDFdCitQQVNTIEluaXRpYWxpemluZyB3aXRoIGJvdGggaW5pdGlhbCBhbmQgbWluaW11bQorUEFT
UyBaZXJvIG1pbmltdW0KK1BBU1MgTm9uLXplcm8gbWluaW11bQogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dhc20vanNhcGkvdGFibGUv
Y29uc3RydWN0b3ItdHlwZXMudGVudGF0aXZlLmFueS53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL3RhYmxl
L2NvbnN0cnVjdG9yLXR5cGVzLnRlbnRhdGl2ZS5hbnkud29ya2VyLWV4cGVjdGVkLnR4dAppbmRl
eCBlNTY3OWVlMmE4OTIzMTRhOWRhZWNkZWRhMjRhMzIzNWI0MTdkM2E4Li4yYTBiNGQ1ZmE4OTI2
MWEzZjk1NWI4NjQ5ZTg3MzFjOWNiYTNlNmFjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dhc20vanNhcGkvdGFibGUvY29uc3RydWN0b3It
dHlwZXMudGVudGF0aXZlLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2FzbS9qc2FwaS90YWJsZS9jb25zdHJ1
Y3Rvci10eXBlcy50ZW50YXRpdmUuYW55Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1
IEBACiAKLUZBSUwgSW5pdGlhbGl6aW5nIHdpdGggYm90aCBpbml0aWFsIGFuZCBtaW5pbXVtIGFz
c2VydF90aHJvd3NfanM6IGZ1bmN0aW9uICIoKSA9PiBuZXcgV2ViQXNzZW1ibHkuVGFibGUoYXJn
dW1lbnQpIiBkaWQgbm90IHRocm93Ci1GQUlMIFplcm8gbWluaW11bSBFeHBlY3QgYW4gaW50ZWdl
ciBhcmd1bWVudCBpbiB0aGUgcmFuZ2U6IFswLCAyXjMyIC0gMV0KLUZBSUwgTm9uLXplcm8gbWlu
aW11bSBFeHBlY3QgYW4gaW50ZWdlciBhcmd1bWVudCBpbiB0aGUgcmFuZ2U6IFswLCAyXjMyIC0g
MV0KK1BBU1MgSW5pdGlhbGl6aW5nIHdpdGggYm90aCBpbml0aWFsIGFuZCBtaW5pbXVtCitQQVNT
IFplcm8gbWluaW11bQorUEFTUyBOb24temVybyBtaW5pbXVtCiAKZGlmZiAtLWdpdCBhL0pTVGVz
dHMvd2FzbS9qcy1hcGkvdGFibGUuanMgYi9KU1Rlc3RzL3dhc20vanMtYXBpL3RhYmxlLmpzCmlu
ZGV4IGQ0MDlhNDgxMDhkMmExZTNiNTZkMGEzMmUzZjBlOWQxNDA5ODYwZTMuLmRiNzg3OGYwY2Ey
M2RjOWUxZjE5NjJhOGY1NjU2NzA2OTg4ZTAyZGYgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvd2FzbS9q
cy1hcGkvdGFibGUuanMKKysrIGIvSlNUZXN0cy93YXNtL2pzLWFwaS90YWJsZS5qcwpAQCAtMzY0
LDMgKzM2NCwyOSBAQCBhc3NlcnQudGhyb3dzKCgpID0+IFdlYkFzc2VtYmx5LlRhYmxlLnByb3Rv
dHlwZS5ncm93KHVuZGVmaW5lZCksIFR5cGVFcnJvciwgYGV4cAogICAgIGFzc2VydC5lcShpbnN0
YW5jZS5leHBvcnRzLnRhYmxlMC5sZW5ndGgsIDApOwogICAgIGFzc2VydC50cnV0aHkoaW5zdGFu
Y2UuZXhwb3J0cy50YWJsZSBpbnN0YW5jZW9mIFdlYkFzc2VtYmx5LlRhYmxlKTsKIH0KKworewor
ICAgIGNvbnN0IGFyZ3MgPSB7bWluaW11bTogNSwgZWxlbWVudDogImZ1bmNyZWYifQorICAgIGxl
dCBtaW5pbXVtID0gZmFsc2UKKyAgICBjb25zdCBwcm94eSA9IG5ldyBQcm94eShhcmdzLCB7Cisg
ICAgICAgIGdldCh0YXJnZXQsIHByb3AsIHJlY2VpdmVyKSB7CisgICAgICAgICAgICBpZiAocHJv
cCA9PT0gIm1pbmltdW0iKSB7CisgICAgICAgICAgICAgICAgbWluaW11bSA9IHRydWU7CisgICAg
ICAgICAgICB9CisgICAgICAgICAgICByZXR1cm4gUmVmbGVjdC5nZXQoLi4uYXJndW1lbnRzKTsK
KyAgICAgICAgfQorICAgIH0pCisgICAgY29uc3QgdGFibGUgPSBuZXcgV2ViQXNzZW1ibHkuVGFi
bGUocHJveHkpOworICAgIGFzc2VydC5lcSh0YWJsZS5sZW5ndGgsIDUpOworICAgIGFzc2VydC50
cnV0aHkobWluaW11bSk7CisKKyAgICBsZXQgdGhyZXcgPSBmYWxzZTsKKyAgICB0cnkgeworICAg
ICAgICBuZXcgV2ViQXNzZW1ibHkuVGFibGUoe21pbmltdW06IDUsIGluaXRpYWw6IDUsIGVsZW1l
bnQ6ICJmdW5jcmVmIn0pOworICAgIH0gY2F0Y2ggKGUpIHsKKyAgICAgICAgYXNzZXJ0LnRydXRo
eShlIGluc3RhbmNlb2YgVHlwZUVycm9yKTsKKyAgICAgICAgYXNzZXJ0LmVxKGUubWVzc2FnZSwg
IldlYkFzc2VtYmx5LlRhYmxlICdpbml0aWFsJyBhbmQgJ21pbmltdW0nIG9wdGlvbnMgYXJlIHNw
ZWNpZmllZCBhdCB0aGUgc2FtZSB0aW1lIikKKyAgICAgICAgdGhyZXcgPSB0cnVlOworICAgIH0K
KyAgICBhc3NlcnQudHJ1dGh5KHRocmV3KTsKK30KZGlmZiAtLWdpdCBhL0pTVGVzdHMvd2FzbS9q
cy1hcGkvdGVzdF9tZW1vcnlfY29uc3RydWN0b3IuanMgYi9KU1Rlc3RzL3dhc20vanMtYXBpL3Rl
c3RfbWVtb3J5X2NvbnN0cnVjdG9yLmpzCmluZGV4IGI4ODkzZWFiN2FmMmZhYzBlYTM0OGM1ZWU1
MjU2N2MzY2U1NGM2ZDkuLjdmMGM5MjEwMTFmNTIzYzMzZDYxOWY4NmEzZjk4ZDEwMzlmMWJkNmEg
MTAwNjQ0Ci0tLSBhL0pTVGVzdHMvd2FzbS9qcy1hcGkvdGVzdF9tZW1vcnlfY29uc3RydWN0b3Iu
anMKKysrIGIvSlNUZXN0cy93YXNtL2pzLWFwaS90ZXN0X21lbW9yeV9jb25zdHJ1Y3Rvci5qcwpA
QCAtODEsMyArODEsMjkgQEAgZnVuY3Rpb24gdGVzdEludmFsaWRTaXplKGRlc2NyaXB0aW9uLCBw
cm9wTmFtZSkgewogICAgIH0KICAgICBhc3NlcnQodGhyZXcpOwogfQorCit7CisgICAgY29uc3Qg
YXJncyA9IHttaW5pbXVtOiA1fTsKKyAgICBsZXQgbWluaW11bSA9IGZhbHNlOworICAgIGNvbnN0
IHByb3h5ID0gbmV3IFByb3h5KGFyZ3MsIHsKKyAgICAgICAgZ2V0KHRhcmdldCwgcHJvcCwgcmVj
ZWl2ZXIpIHsKKyAgICAgICAgICAgIGlmIChwcm9wID09PSAibWluaW11bSIpIHsKKyAgICAgICAg
ICAgICAgICBtaW5pbXVtID0gdHJ1ZTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHJldHVy
biBSZWZsZWN0LmdldCguLi5hcmd1bWVudHMpOworICAgICAgICB9CisgICAgfSkKKyAgICBjb25z
dCBtZW0gPSBuZXcgV2ViQXNzZW1ibHkuTWVtb3J5KHByb3h5KTsKKyAgICBhc3NlcnQobWVtLmJ1
ZmZlci5ieXRlTGVuZ3RoID09PSA1ICogcGFnZVNpemUpOworICAgIGFzc2VydChtaW5pbXVtKTsK
KworICAgIGxldCB0aHJldyA9IGZhbHNlOworICAgIHRyeSB7CisgICAgICAgIG5ldyBXZWJBc3Nl
bWJseS5NZW1vcnkoe21pbmltdW06IDUsIGluaXRpYWw6IDV9KTsKKyAgICB9IGNhdGNoIChlKSB7
CisgICAgICAgIGFzc2VydChlIGluc3RhbmNlb2YgVHlwZUVycm9yKTsKKyAgICAgICAgYXNzZXJ0
KGUubWVzc2FnZSA9PT0gIldlYkFzc2VtYmx5Lk1lbW9yeSAnaW5pdGlhbCcgYW5kICdtaW5pbXVt
JyBvcHRpb25zIGFyZSBzcGVjaWZpZWQgYXQgdGhlIHNhbWUgdGltZSIpOworICAgICAgICB0aHJl
dyA9IHRydWU7CisgICAgfQorICAgIGFzc2VydCh0aHJldyk7Cit9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>